file對象是對文件的操作。具體方法有以下幾類
File 的構造方法:
1)創建File(String parent,String child)
new出File對象之后,必須執行createNewFile()方法才能夠創建出文件
2)separator?
獲取與系統有關的默認名稱分隔符,為了方便,它被表示為一個字符串。
1、創建:
boolean createNewFile() 當文件不存在時創建一個文件。若文件存在 則返回false。
boolean mkdir()?
創建此抽象路徑名指定的目錄。?
boolean mkdirs()?
創建此抽象路徑名指定的目錄,包括所有必需但不存在的父目錄。?
2、刪除
boolean delete()?
刪除此抽象路徑名表示的文件或目錄。?
void deleteOnExit()?
在虛擬機終止時,請求刪除此抽象路徑名表示的文件或目錄。?
3、獲取
File getAbsoluteFile()?
返回此抽象路徑名的絕對路徑名形式。?
String getAbsolutePath()?
返回此抽象路徑名的絕對路徑名字符串。 ?
String getName()?
返回由此抽象路徑名表示的文件或目錄的名稱。?
String getParent()?
返回此抽象路徑名父目錄的路徑名字符串;如果此路徑名沒有指定父目錄,則返回 null。?
File getParentFile()?
返回此抽象路徑名父目錄的抽象路徑名;如果此路徑名沒有指定父目錄,則返回 null。?
String getPath()?
將此抽象路徑名轉換為一個路徑名字符串。?
4、判斷
int compareTo(File pathname) 按字母順序比較兩個抽象路徑名。?
boolean isAbsolute()?
測試此抽象路徑名是否為絕對路徑名。?
boolean isDirectory()?
測試此抽象路徑名表示的文件是否是一個目錄。?
boolean isFile()?
測試此抽象路徑名表示的文件是否是一個標準文件。?
boolean isHidden()?
測試此抽象路徑名指定的文件是否是一個隱藏文件。?
boolean exists()?
測試此抽象路徑名表示的文件或目錄是否存在。?
5、File獲取列表的方法
File[] listRoots()?
列出可用的文件系統根。?
File[] listFiles()?
返回一個抽象路徑名數組,這些路徑名表示此抽象路徑名表示的目錄中的文件。?
String[] list(FilenameFilter filter)?
返回一個字符串數組,這些字符串指定此抽象路徑名表示的目錄中滿足指定過濾器的文件和目錄。?
~~~
import java.io.*;
public class FileDemo{
public static void main(String args[])throws IOException{
//mathod_create();
//mathod_file();
//mathod_get();
//mathod_list();
new FileDemo().mathod_FileterList();
}
public static void mathod_create()throws IOException{
File f = new File("xy.txt");
File f1 = new File("abc");
f1.mkdir();
sys("create:"+f.createNewFile());
}
public static void mathod_get()throws IOException{
File f = new File("xy.txt");
sys("getParent:"+f.getParent());
}
public static void mathod_file()throws IOException{
//構造方法1
//File f = new File("F:\\JavaOracle","hh.txt"); // 根據 parent 路徑名字符串
File f = new File("xy.txt");
File f1 = new File("sys.txt");
if(f1.exists()&&f.exists())
sys("exists() :"+f1.compareTo(f));
}
public static void mathod_list(){
File f = new File("C:\\");
File[] files = f.listFiles();
for(File file : files){
sys("list盤符:"+file);
}
}
public void mathod_FileterList(){
File f = new File("F:\\JavaOracle\\OOP\\IO");
String []fileNames = f.list(new FilenameFilter(){
public boolean accept(File dir,String name){
return name.endsWith(".txt");
}
});
for(String fileName:fileNames){
sys("--->"+fileName);
}
}
public static void sys(Object object){
System.out.println(object);
}
}
~~~