java批量修改檔名

__cherish發表於2021-01-03

當需要重新命名一些檔案的時候,一個個修改,那可能得累的砸鍵盤。。。

當需要批量處理檔名的時候,直接一個java程式就簡單明瞭~~

例如需要將檔案的字尾名全部都改為 png 格式

import java.io.File;

public class RenameFile {
    public static void main(String[] args) {
        File f = new File("E:/fish/");  //給定要查詢的路徑
        if (f.exists()) {
            File[] files = f.listFiles();  //列出該路徑下的所有檔案
            for (int i = 0; i < files.length; i++) {
                String oldName = files[i].getName();  //讀取路徑下的的每個檔名

                System.out.println(oldName);

                String newName = files[i].getName().substring(0, 4);  //擷取原檔名的一部分作為新檔名的一部分

                System.out.println(newName);

                newName = newName + ".png";

                System.out.println(newName);

                if (!oldName.equals(newName)) {
                    //File path = new File(files[i].getParent());
                    //System.out.println(path);
                    File path = new File("D:/fish_img");  //修改後的檔案需要儲存的路徑
                    if (!path.exists()) {
                        System.out.println("該路徑不存在,需要建立");
                        path.mkdirs();
                        System.out.println("建立路徑成功");
                    }
                    File newFile = new File(path + "/" + newName);
                    if (newFile.exists()) {
                        System.out.println(newName + "已經存在");
                    }
                    else {
                        files[i].renameTo(newFile);  //將該檔案移動到新路徑下,並修改名稱
                    }
                }
            }
        }

    }
}

相關文章