1. 程式人生 > 其它 >Java——File類

Java——File類

技術標籤: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轉換為路徑名字串

public String getName()
返回由此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
		}
	}