1. 程式人生 > 實用技巧 >2020/7/29 java File類

2020/7/29 java File類

1File

1.1IO概述

當需要把記憶體中的資料儲存到持久化裝置上這個動作稱為輸出(寫)Output操作。

當把持久裝置上的資料讀取到記憶體中的這個動作稱為輸入(讀)Input操作。

因此我們把這種輸入和輸出動作稱為IO操作。

1.2File類的出現

開啟API,搜尋File類。閱讀其描述:File檔案和目錄路徑名的抽象表示形式。即,Java中把檔案或者目錄(資料夾)都封裝成File物件。也就是說如果我們要去操作硬碟上的檔案,或者資料夾只要找到File這個類即可。

1.3 File成員變數

File.pathSeparator

與系統有關的路徑分隔符 windows ; linux :

File.separator

與系統有關的預設名稱分隔符 win \ linux /

1.4File類的建構函式

1.5File類的獲取

1.6檔案和資料夾的建立刪除等

1.7listFiles()方法介紹

在獲取指定目錄下的檔案或者資料夾時必須滿足下面兩個條件

1,指定的目錄必須是存在的,

2,指定的必須是目錄。否則容易引發返回陣列為null,出現NullPointerException

1.8檔案過濾器

我們是可以先把一個目錄下的所有檔案和資料夾獲取到,並遍歷當前獲取到所有內容,遍歷過程中在進行篩選,但是這個動作有點麻煩,Java給我們提供相應的功能來解決這個問題。

查閱File類的API,在查閱時發現File類中過載的listFiles方法,並且接受指定的過濾器。

  

public class FileDemo2 {
    public static void main(String[] args) {
        //獲取副檔名為.java所有檔案
        //建立File物件
        File file = new File("E:\\code\\day11_code");
        //獲取指定副檔名的檔案,由於要對所有檔案進行副檔名篩選,因此呼叫方法需要傳遞過濾器
        File[] files = file.listFiles(new
MyFileFilter()); //遍歷獲取到的所有符合條件的檔案 for (File f : files) { System.out.println(f); } } }
class MyFileFilter implements FilenameFilter{
    public boolean accept(File dir, String name) {
        return name.endsWith(".java");
    }
}