java常用類(遞歸調(diào)用列出文件夾的所有子文件)

java.io.File類代表系統(tǒng)文件(路徑和文件名)

File類的常見構(gòu)造方法。
public File(String pathname)
以pathname為路徑創(chuàng)建File對象,如果pathname是相對路徑,默認的當前路徑在系統(tǒng)屬性user.dir中存儲。

public File(String parent, String child)
以parent為父路徑,child為子路徑創(chuàng)建File對象。
File的靜態(tài)屬性String separator存儲了當前系統(tǒng)的路徑分隔符。
無論是Linux或Windows一般用"/"比較好。

通過File對象可以訪問文件的屬性。
public boolean canRead()
pubblic boolean canWrite()
public boolean exists()
public boolean isDirectory()
publlic boolean isFile()
public boolean isHiden()
public long lastMOdified() //存儲自上次修改隔了多少毫秒
public long length()
public String getName()
public String getPath()

通過File對象創(chuàng)建空文件或目錄(在該對象所指的文件或目錄不存在的情況下)
public boolean createNewFile() throws IOException
public boolean delete()
public boolean mkdir()
public boolean mkdirs() //創(chuàng)建在路徑中的一系列目錄

創(chuàng)建文件的代碼:


import java.io.*;

public class TestMath {

    public static void main(String[] args) {
        // TODO 自動生成的方法存根
        String separator = File.separator;
        String filename =  new String("myfile.txt");
        String directory = "dir1" + separator + "dir2";
        File f = new File(directory,filename);
        if(f.exists()) {
            System.out.println(f.getAbsolutePath());
            System.out.println(f.length());
        } else {
            /*創(chuàng)建路徑*/
            f.getParentFile().mkdirs();
            try {
                /*創(chuàng)建文件并且捕抓出現(xiàn)的IOException異常*/
                f.createNewFile();
            }catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

}



import java.io.*;

public class FileList {

    public static void main(String[] args) {
        // TODO 自動生成的方法存根
        File f = new File("src/A");
        System.out.println(f.getName());
        int level = 1;
        list(f, level);
    }
    private static void list(File f, int level) {
        String preStr="";
        for(int i=0; i<level; i++) {
            preStr += "     ";
        }
        
        if(f.isDirectory()) {
            File[] files = f.listFiles();
            for( File file : files) {
                System.out.println(preStr+file.getName());
                list(file, ++level);
            }
        }
    }
}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,588評論 19 139
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,734評論 18 399
  • 我們要想實現(xiàn)IO的操作,就必須知道硬盤上文件的表現(xiàn)形式。而Java就提供了一個類File供我們使用。所以這篇我們來...
    清風沐沐閱讀 3,003評論 1 9
  • File類 File類用來操作文件路徑或文件夾路徑 絕對路徑從根目錄開始 相對路徑在eclipse中代表當前項目根...
    JerichoPH閱讀 604評論 0 3
  • 不知道大家有木有過這種感受,某個時刻,會覺得很無助,特別無助,覺得全世界的人都幫不了自己!回頭看看過去,感覺自己怎...
    開心的泡泡閱讀 196評論 0 0

友情鏈接更多精彩內(nèi)容