JAVA File

File類

File類是文件和目錄路徑的抽象表示.該類主要用於目文件和目錄的建立,查找,刪除java

構造方法

File(File parent, String child) 
//從父抽象路徑名和子路徑名字符串建立新的 File實例。  
File(String pathname) 
//經過將給定的路徑名字符串轉換爲抽象路徑名來建立新的 File實例。  
File(String parent, String child) 
//從父路徑名字符串和子路徑名字符串建立新的 File實例。  
File(URI uri) 
//經過將給定的 file: URI轉換爲抽象路徑名來建立新的 File實例。

建立

boolean createNewFile() 
//若是不存在該名稱的文件,就建立該文件
boolean mkdir() 
//若是不存在該名稱的文件夾,就建立該文件夾 
boolean mkdirs()
//若是不存在該文件夾,就建立該多級文件夾

刪除

public boolean delete()
//刪除文件或者文件夾,只能刪除空文件夾
//如果要刪除非空文件夾必需要進行遞歸操做

重命名

public boolean renameTo(File dest)
//把文件重命名爲指定的文件路徑
//若是路徑名相同,就是更名。
//若是路徑名不一樣,就是更名並剪切。

判斷

public boolean isDirectory()//判斷是不是目錄
public boolean isFile()//判斷是不是文件
public boolean exists()//判斷是否存在
public boolean canRead()//判斷是否可讀
public boolean canWrite()//判斷是否可寫
public boolean isHidden()//判斷是否隱藏

File類的獲取功能

public String getAbsolutePath()//獲取絕對路徑
public String getPath()//獲取相對路徑
public String getName()//獲取名稱
public long length()//獲取長度。字節數
public long lastModified()//獲取最後一次的修改時間,毫秒值
public String[] list()//獲取指定目錄下的全部文件或者文件夾的名稱數組==
public File[] listFiles()//獲取指定目錄下的全部文件或者文件夾的File數組

文件名稱過濾器

public String[] list(FilenameFilter filter)//返回符合要求的文件或文件夾的字符串數組
public File[] listFiles(FilenameFilter filter)//返回符合要求的文件或文件夾的File數組

Demo

文件過濾器的使用

import java.io.File;
import java.io.FilenameFilter;

public class FileTest {
    public static void main(String args[]){
        File desktop=new File("C:\\Users\\19455\\Desktop");
        //打印桌面上的全部png文件名
        String[] jpg=desktop.list(new FilenameFilter() {
            @Override
            public boolean accept(File dir, String name) {
                File file=new File(dir,name);
                return file.isFile()&&file.getName().endsWith(".png");
            }
        });
        for(String s:jpg)
            System.out.println(s);
    }
}

遞歸打印一個文件夾下的全部文件名

import java.io.File;

public class FileTest {
    public static void printAllFileName(File file){
        for(File f:file.listFiles())
            if(f.isFile())
                System.out.println(f.getName());
            else
                printAllFileName(f);
    }
    public static void main(String args[]){
        printAllFileName(new File("D:\\英雄時刻"));
    }
}
相關文章
相關標籤/搜索