JavaI/O:File類的常用方法
Java File類的功能非常強大,利用java基本上可以對文件進行所有操作。文本將對Java File 文件操作的類詳細的分析,並將File類中的常用方法進行簡單介紹。
使用createNewFile()創建文件
File file1 = new File("test1.txt"); file1.createNewFile();
File類中的mkdir和mkdir的區別
mkdirs()可以建立多級文件夾,?mkdir()只會建立一級的文件夾
File file2 = new File("D:\\cmz\\test2");
file2.mkdir();
File file3 = new File("D:\\cmz\\test2\\test3.txt");
file3.mkdirs();
File.separator方法
在Windows下的路徑分隔符(\)和在Linux下的路徑分隔符(/)是不一樣的,當直接使用絕對路徑時,跨平臺會報No Such file or diretory異常。
File中還有幾個與separator類似的靜態常量,與系統有關,在編程中應盡量使用。
File test = new File("D:");
String strFile = File.separator+"cmz"+test.separator+"test2"+test.separator+"test4.txt";
File file4 = new File(test,strFile);
file4.createNewFile();
file4.delete();
File.deleteOnExit和File.createTempFile
File.createTempFile是在默認臨時文件目錄中創建一個空文件,使用給定前綴和後綴生成其名稱
File.delete無需解釋,為直接刪除,deleteOnExit解釋為:在虛擬機終止時,請求刪除此抽象路徑名表示的文件或目錄
for(int i=0;i<5;i++)
{
File f=File.createTempFile("chengshit39",".tmp");
f.deleteOnExit();
}
Thread.sleep(9000);
File.list 和File.lists:
list()方法 : 會返回一個字符數組,將制定路徑下的文件或文件夾名字存儲到String數組中。因為其返回的是一個String類型的數組,所以它也就只是一個名字而已(後面要講到的listFiles()及其重載方法則不同,它們返回的是File類型的對象,所以具有其全部的屬性和方法)。有以下兩種重載方式:
1)、String[] ?list()
2)、String[] ?list(FilenameFilter filter)
而listFiles()方法返回的是一個File類的引用,它具有類的所有屬性和方法,比如:String?getName()方法就能夠返回該文件的String類型的文件名(名字而已)。
因此,遍歷文件夾中所有文件,包括子文件夾中的文件時,必須用listFiles()方法
File file=new File("D:\\cmz\\test2");
System.out.println("list()方法遍歷的結果:");
String[] strings=file.list();
for (String string : strings) {
System.out.println(string);
}
System.out.println();
System.out.println("listFiles()方法遍歷的結果:");
File[] files=file.listFiles();
for (File file2 : files) {
System.out.println(file2);
}
JavaI/O:File類的常用方法