1. 程式人生 > 其它 >Java常用類學習:File類

Java常用類學習:File類

Java常用類學習:File類

  • Java File類:

    • java.io.File類代表系統檔案類:檔名,路徑名;

    • 該類主要用於檔案和目錄的建立,檔案的查詢和檔案的刪除等;

    • File物件代表磁碟中實際存在的檔案和目錄;

       

  • File類的4個構造方法(構造方法是為了初始化物件的)

    /*
       總結:File類

       1,File類有4個構造方法:
       (1.1)public File(String);//pathname檔案路徑/檔名:建立一個新File例項;
       (1.2)public File(String ,String);//子,父目錄一起建立一新File例項;
       (1.3)public File(File,String);//檔案和路徑一起建立一個新File例項
       (1.4)public File(URL url);//不太會用

    2,構造方法:目的是為了初始化物件(切記只是初始化物件,不會建立檔案)

    */
    public class FileDemo01 {
       public static void main(String[] args) {

           //構造方法1:public File(String);
           File file=new File("E:/haha");
           //建立檔案:File類中 mkdir();方法 //返回一個boolean值
           if(file.mkdir()){
               System.out.println("目錄建立成功");
          }else {
               System.out.println("目錄建立失敗");
          }

           System.out.println("------------------------------------");

           //構造方法2:public File(String,String);//
           File file1=new File("E:/","hahaha");//常用於建立子目錄
           if(file1.mkdir()){
               System.out.println("目錄建立成功");
          }else {
               System.out.println("目錄建立失敗");
          }

           System.out.println("------------------------------------");

           //構造方法3:public File(File,String);
           File file2=new File(file,"haha1");//常用於建立子目錄
           if(file2.mkdir()){
               System.out.println("目錄建立成功");
          }else {
               System.out.println("目錄建立失敗");
          }

           System.out.println("------------------------------------");

           //構造方法4:public File(URL url);//暫時不太會用,做個標記,後補
         

      }
    }

     

  • File類中的方法:

    //1,getName():
    public String getName();//返回檔案或目錄的名稱;

    //2,getParent():
    public String getParent();//返回父路徑名稱,如果沒有指定父路徑,則返回null

    //3,getParentFile():
    public File getParentFile();//返回一個父路徑,如果沒有,則返回Null

    //4,getPath:
    public String getPath();//轉換路徑名

    //5,isAbsolute():
    public boolean isAbsolute();//測試當前路徑是否:是絕對路徑

    //6,getAbsolutePath():
    public String getAbsolutePath();//返回絕對路徑名字元出

    //7,


     

  • 程式碼案例:


    /**
    * File類:常用方法
    *
    * 1,File類的核心:
    * (1.1)建立檔案或者目錄;
    * (1.3)刪除檔案或者目錄;
    * (1.4)查詢檔案或者目錄;
    *
    */
    public class FileDemo02 {
       public static void main(String[] args) {

           

      }


    }

    /*

           File file=new File("E:/");//根目錄

           //1.1 查詢檔案或則目錄:檔案比較多,所以需要用陣列接收
           String[] strArr=file.list();
           //遍歷陣列,用for-each迴圈
           for (String s:strArr) {
               System.out.print(s+",");
           }

           System.out.println("----------------------------");

           //1.2 建立一個haha資料夾
           File file1=new File("E:/haha");//建立成功
           if(file1.mkdir()){
               System.out.println("建立成功");
           }else{
               System.out.println("失敗");
           }

           //建立一個子資料夾
           File file2=new File("E:/hahaha","hhh");
           if(file2.mkdirs()){//多級目錄建立,需要使用mkdirs
               System.out.println("建立成功");
           }else{
               System.out.println("失敗");
           }

           //1.3 建立檔案
           File file=new File("E:/demo.txt");
           try {
               if(file.createNewFile()){//建立檔案
                   System.out.println("檔案建立成功!");
               }
           } catch (Exception e) {
               System.out.println("檔案異常!");
           }

           //1.3 刪除檔案或者目錄
           File file=new File("E:/haha/hhh");

           //刪除E盤haha資料夾中的demo.txt檔案

           boolean b=file.delete();
           if(b){
               System.out.println("執行成功");
           }else{
               System.out.println("失敗");
           }

          //1.4查詢某個資料夾下的所有目錄及檔案
           File file=new File("E:/haha");

           String[] strArr=file.list();
           for (String x: strArr) {
               System.out.println(x);
           }
           //查詢某個資料夾下的所有檔案
           File[] fileArr=file.listFiles();
           //遍歷FIle[]陣列
           for (File f:fileArr) {
               System.out.println(f);
           }



           //1.4.1只檢視該目錄下的txt檔案,新增過濾器
           FilterDemo filter=new FilterDemo();
           File[] fileArr1=file.listFiles(filter);
           for (File ff: fileArr1) {
               System.out.println(ff);
           }




    */