JAVA基礎之檔案(File)
阿新 • • 發佈:2018-12-27
File類
- 構造:
public class File
extends Object
implements Serializable, Comparable
File類就是檔案和目錄路徑名的抽象表示形式。
通過將給定路徑名字串轉換為抽象路徑名來建立一個新 File 例項,也就是說她可以封裝檔案或目錄,將檔案變為一個可操作物件;用這個我們可以獲取它的路徑或者看檔案大小等一系列操作;
比如我們可以封裝一個任意型別的檔案
File file = new File(“E:\mm.mp3”);
我們將一個E:p盤下的mm.mp3封裝起來,封裝為物件file,然後對他進行操作;
File file = new File(“D:\IObit”)
或者封裝一個資料夾;
我們將它封裝起來了,下面我們來看看File有什麼好用的方法讓我們對他進行操作;
上面是一些對檔案的增刪,重新命名等基本操作,下面我們來看看一些更常用的高階操作;
-
綜合應用:
上面我們說了那麼多的操作,那我們組合起來就可以完成一些特定的功能,比如篩選特定檔案,批量刪除檔案,批量修改檔名; -
篩選特定檔案
public static void main(String[] args) {
//封裝此目錄
File file = new File("C:\...\部落格元素");
//獲取此目錄下所有的檔案和資料夾
File[] files = file.listFiles();
//遍歷陣列進行判斷
for (File file1 : files) {
if(file1.isFile()&&file1.getName().endsWith(".png")){
System.out.println(file1.getName());
}
}
}
我們需求是獲取 C:…\部落格元素 路徑下所有的png檔案;
- 批量刪除多級檔案
public static void main(String[] args) {
//刪掉資料夾
File file = new File("E:\\testUploadImage");
deleteFolder(file);
}
//遞迴刪除多級資料夾
private static void deleteFolder(File file) {
File[] files = file.listFiles();
for (File f : files) {
if (f.isFile()) {
//如果是檔案就直接刪除
f.delete();
} else {
//如果是資料夾就遞迴呼叫
deleteFolder(f);
}
}
//刪除空目錄
file.delete();
}