Java——File類
阿新 • • 發佈:2021-01-07
技術標籤:JAVA
前言:java.io.File類是檔案和目錄路徑的抽象表示,主要用於檔案和目錄的建立、查詢和刪除操作
構造方法:
public File(String pathname)
通過將給定的路徑名字串轉換為抽象路徑名來建立新的 File例項。
public File(String parent, String child)
從父路徑名字串和子路徑名字串建立新的 File例項。
public File(File parent, String child)
從父抽象路徑名和子路徑名字串建立新的 File例項。
例:
// 檔案路徑名
String pathname = "C:\\test.txt" ;
File file1 = new File(pathname);
// 檔案路徑名
String pathname2 = "C:\\test\\test2.txt";
File file2 = new File(pathname2);
——————————————————————————————————————————————
// 通過父路徑和子路徑字串
String parent = "C:\\test";
String child = "test2.txt";
File file3 = new File(parent, child) ;
// 通過父級File物件和子路徑字串
File parentDir = new File("C:\\test");
String child = "test2.txt";
File file4 = new File(parentDir, child);
注:1.File物件代表硬碟中實際存在的一個檔案或者目錄
2.無論該路徑下是否存在檔案或者目錄,都不影響File物件的建立
常用方法:
獲取功能的方法
public String getAbsoIutePath()
返回此File的絕對路徑名字串
public String getPath()
將此File轉換為路徑名字串
返回由此File表示的檔案或目錄的名稱。
public Long length(): 返回由此File表示的檔案的長度。
例:
public class FileGet{
public static void main(String[] args) {
File f = new File("d:/aaa/bbb.java");
System.out.println("檔案絕對路徑"+f.getAbsolutePath());
System.out.println("檔案構造路徑"+f.getPath());
System.out.println("檔名稱"+f.getName());
System.out.println("檔案長度"+f.length()+"位元組");
File f2 = new File("d:/aaa");
System.out.println("目錄絕對路徑:"+f2.getAbsolutePath());
System.out.println("目錄構造路徑:"+f2.getPath());
System.out.println("目錄名稱:"+f2.getName());
System.out.println("目錄長度:"+f2.length());
}
}
執行結果
判斷功能的方法
public boolean exists()
此File表示的檔案或目錄是否實際存在。
public boolean isDirectory()
此File表示的是否為目錄。
public boolean isFile()
此File表示的是否為檔案。
例:
public class FileIs{
public static void main(String[] args){
File f = new File("d;\\aaa\\bbb.java");
File f2 = new File("d:\\aaa");
//判斷是否存在
System.out.println("d:\\aaa\\bbb.java 是否存在:"+f.exists());
System.out.println("d:\\aaa 是否存在:"+f2.exists());
//判斷是檔案還是目錄
System.out.println("d:\\aaa 檔案?:"+f2.isFile());
System.out.println("d:\\aaa 目錄?:"+f2.isDirectory());
}
}
提示:我並沒有aaa目錄和bbb.java檔案
建立刪除功能的方法
public boolean createNewFile()
當且僅當具有該名稱的檔案尚不存在時,建立一個新的空檔案。
public boolean delete()
刪除由此File表示的檔案或目錄。
public boolean mkdir()
建立由此File表示的目錄。
public boolean mkdirs()
建立由此File表示的目錄,包括任何必需但不存在的父目錄。
例:
public class FileCreateDemote {
public static void main (String[] args) throws IOException {
//檔案的建立
File f = new File("aaa.txt");
System.out.println("是否存在:"+f.exists()); //false
System.out.println("是否建立:"+f.createNewFile()); //true
System.out.println("是否存在:"+f,exists());//true
//檔案的刪除
System.out.println(f.delete());//true
//目錄的建立
File f2 = new File("newDir");
System.out.println("是否存在:"+f2.exists());//false
System.out.println("是否建立:"+f2.mkdir());//true
System.out.println("是否存在:"+f2.exists());//true
//目錄的刪除
System.out.println(f2.delete);//true
}
}