JAVA進階(十)File類與列舉
阿新 • • 發佈:2018-12-15
前言
本章講解File類的基本用法,為後面講解IO流做一個鋪墊性的準備工作
範例
1.File類的基本概念
java.io.File類:代表檔案和目錄。在開發中,讀取檔案、生成檔案、刪除檔案、修改檔案屬性的時候將會用到本類,可以說很重要
2.構造方法(一般常用的是第二個)
3.絕對路徑與相對路徑
絕對路徑,說白了,就是檔案的具體路徑,如:d:/test.txt;而相對路徑,則是根據當前專案路徑考慮,如../test.txt表示專案根路徑父路徑下的test.txt文件
4.正斜槓“/”與反斜槓“\”
由於作業系統的不同,一般情況下,windows系統下的檔案路徑使用反斜槓、linux系統使用的則是正斜槓,為了防止混淆,File類提供了一個專門的常量值代表斜槓,在不同的作業系統有不一樣的表現形式:
5.常用方法
- public boolean createNewFile() :建立一個新檔案,如果該檔案已經存在則返回false,成功則返回true
- pubic boolean delete():刪除資料夾或者檔案,成功則返回true
- public boolean exists():判斷一個檔案或資料夾是否存在
- public String getName():返回一個資料夾或者檔案的名稱
- public String getParent():返回一個資料夾或者檔案的父路徑
- public String getPath():返回一個資料夾或者檔案的完整路徑
- public boolean isDirectory():判斷一個File物件是否為資料夾
- public boolean isFile():判斷一個File物件是否為檔案
- public boolean mkdir():建立資料夾,基於當前路徑,如未找到該路徑,則建立失敗
- public boolean mkdirs():建立資料夾,建立所有關聯的資料夾(推薦使用該方法)
例項:使用遞迴演算法列印目錄樹,實現下面的功能
程式原始碼:
package com.jwang.test; import java.io.File; /** * 遞迴列印目錄樹 * @author jwang * */ public class Test{ public static void main(String[] args){ //建立要列印的目錄 File file = new File("D:\\workspace\\java01"); //列印目錄樹 printFile(file,0); } public static void printFile(File file,int level){ for (int i = 0; i < level; i++) { System.out.print(" --"); } System.out.println(file.getName()); if(file.isDirectory()){ for (File child : file.listFiles()) { printFile(child,level+1); } } } }
6.列舉的基本用法
各位看如下程式碼即可,列舉無需瞭解過多,否則走火入魔