Java學習之路(十一):IO流<前戲>

File類的概述和構造方法

構造方法:

  • File(String pathname):根據一個路徑獲得File對象
  • File(String parent,String child):根據一個目錄和一個子文件/目錄 獲得File對象
  • File(File parent,String child):根據一個父File對象和一個子文件/目錄獲得File對象

File更應該叫作一個路徑,文件 路徑  或者  文件夾  路徑java

File是指文件或者目錄路徑名的抽象表示形式數組

建立功能:

  • public boolean createNewFile():建立文件,若是存在這樣的文件,就不會建立了
  • public boolean mkdir():建立一個文件夾(目錄),若是存在這樣的文件夾就再也不建立了
  • public boolean mkdir():迭代着建立文件夾,多層文件夾嵌套建立

重名名和刪除功能:

  • public boolean renameTo(File dest):把文件重名爲指定的文件路徑(和Linux同樣,重名名其實就是剪貼粘貼)
  • public boolean delete():刪除文件或者文件夾(這種刪除是不通過回收站的)

判斷功能:

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

獲取功能:

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

咱們本身實現一個文件名過濾器ide

package null08012133;

import java.io.File;

public class Demo01 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        File file = new File("C:/");
        File[] fileList = file.listFiles();
        for(File fileObj:fileList){
            if(fileObj.isFile()&&fileObj.getName().endsWith(".sys")){
                System.out.println(fileObj.getName());
            }
        }
        
    }

}

 

使用內置的一些方法進行判斷spa

package null08012133;

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

public class Demo02 {

    public static void main(String[] args){
        File file = new File("C:/");
        String[] fileNames = file.list(new FilenameFilter(){

            @Override
            public boolean accept(File dir, String name) {
                // TODO Auto-generated method stub
                File f = new File(dir,name);
                return f.isFile()&&name.endsWith(".sys");
            }
        });
        for(String fileName:fileNames){
            System.out.println(fileName);
        }
    }
    
}
相關文章
相關標籤/搜索