Home  >  Article  >  Java  >  Introduction to the method of batch modifying file suffixes in Java

Introduction to the method of batch modifying file suffixes in Java

不言
不言forward
2019-03-21 16:35:402498browse

本篇文章给大家带来的内容是关于java批量修改文件后缀的方法介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

突然需要改一堆文件的后缀名,所以想编程解决,话不多说直接上代码

java

import java.io.File;
import java.util.Scanner;

public class FileEdit {

    public static void renameFiles(String path, String oldExt, String newExt) {
        File file = new File(path);
        if (!file.exists()) {
            System.err.println("文件路径不存在!");
            return;
        }
        File[] files = file.listFiles();
        if (files.length <= 0) {
            System.err.println("当前路径文件不存在!");
            return;
        }
        for (File f : files) {
            if (f.isDirectory()) {
                renameFiles(f.getPath(), oldExt, newExt);
            } else {
                String name = f.getName();
                if (name.endsWith("." + oldExt)) {
                    name = name.substring(0, name.lastIndexOf(".") + 1);
                    name += newExt;
                    f.renameTo(new File(f.getParent() + "\\" + name));
                }
            }
        }
    }

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入要修改文件后缀名的文件夹:");
        String path = sc.nextLine();
        System.out.println("请输入修改前的后缀名:");
        String oldExt = sc.nextLine();
        System.out.println("请输入修改后的后缀名:");
        String newExt = sc.nextLine();

        renameFiles(path, oldExt, newExt);
        System.out.println("操作完成");
    }
}

其他方法

在网上查了下,发现还有cmd命令可以解决,比如将txt后置改为7z,那么在你需要修改的目录运行cmd然后输入命令ren *.txt *.rar,就可以将所有txt结尾的文件进行修改;此外可以将本命令保存为bat脚本文件,双击进行运行。

本篇文章到这里就已经全部结束了,更多其他精彩内容可以关注PHP中文网的Java教程视频栏目!

The above is the detailed content of Introduction to the method of batch modifying file suffixes in Java. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:segmentfault.com. If there is any infringement, please contact admin@php.cn delete