Java高級學習-File類

      網友投稿 961 2025-04-05

      文章目錄


      構造方法

      方法

      判斷功能

      創建刪除

      目錄遍歷

      遞歸

      文件過濾器

      java.io.File類,對文件和文件夾進行操作。

      directory:文件夾/目錄;path:路徑

      pathSeparator 與系統相關的路徑分隔符 pathSeparatorChar win:; linux::

      separator 與系統相關默認名稱分隔符 separatorChar win:\ linux:/

      絕對路徑:一個完整路徑

      相對路徑:一個簡化路徑,當前項目的根目錄

      注意:路徑不區分大小寫,\是轉移字符,\代表一個普通的反斜杠

      File( String pathname) 通過將給定路徑名字符串轉化為抽象路徑名來創建一個新File實例。 路徑pathname 可以不存在

      File(String parent, String child ) pathname = parent 父路徑 + child 子路徑

      File(File parent, String child ),使用File的方法對路徑進行操作,再使用路徑創建對象。

      public String getAbsolutePath( ) : 返回此File的絕對路徑名字符串

      public String getPath( ) :將此File轉換為路徑名字符串,相對或者絕對路徑。

      public String getName( ):返回由此File表示的文件或者目錄名稱。路徑結尾

      public String length() : 返回由此File表示的文件的長度/大小。以字節為單位,文件夾不能獲取大小(linux文件夾有大小),路徑不存在返回0。

      String toString() :打印路徑

      public boolean exists( ) :此File表示的文件或者目錄是否存在,判斷構造方法中的路徑是否存在。

      public boolean isDirectory ( ) :此File是否為目錄。判斷構造方法中的路徑是否以文件夾結尾。路徑不存在返回false。

      public boolean isFile ( ) :此File是否為目錄文件。判斷構造方法中的路徑是否以文件結尾。路徑不存在返回false。

      public boolean createNewFile( ) :當具有該名稱文件不存在時,創建一個新的空文件。創建文件的路徑和名稱在構造方法中給出,只能創建文件,文件夾不能創建,且路徑必須存在。

      createNewFile聲明了拋出了IOException,需要throws

      Java高級學習-File類

      public boolean delete( ) :刪除由此File表示的文件或者目錄。硬盤刪除。

      public boolean mkdir( ) :創建由此File表示的目錄。創建單級文件夾,只能創建文件夾,不能創建文件

      public boolean mkdirs( ) :創建由此File表示的目錄。包括任何必須或者不存在的父目錄。創建單級/多級文件夾,只能創建文件夾,不能創建文件

      public String[ ] list( ):返回一個String數組,表示該File目錄中的所有子文件或目錄。路徑不能帶文件,可以獲得隱藏文件夾。打印會打印子目錄。

      public File[ ] listFiles( ):返回一個File數組,表示該File目錄中的所有子文件或目錄。打印會打印子目錄路徑。

      list方法和listFiles方法遍歷的是構造方法給出的目錄,如果構造方法中給出的目錄不存在,會拋出空指針異常,如果構造方法中給出的不是目錄,也會拋出空指針異常(NullPointerException)。

      遞歸

      直接遞歸,間接遞歸

      要保證遞歸能夠停下來且遞歸次數不能太多,負責會發生棧內存溢出(StackOverflowError)。

      構造方法,禁止遞歸

      內存中有多個遞歸方法,效率低下

      文件過濾器

      FileFilter接口

      boolean accept(File pathname):File pathname:使用ListFiles遍歷目錄,得到每一個文件對象

      File[ ] listFiles( FilenameFilter filter)

      File dir ; File[ ] files = dir.listFiles( new FileFilter實現類)

      在實現類里進行方法重寫accept方法,返回true則進行返回回去路徑

      boolean accept(File dir , String name):測試指定文件是否應該包含在某一文件列表中。String name:使用ListFiles遍歷目錄,得到每一個文件/文件夾名稱

      兩個過濾器沒有實現類,需要自己進行寫實現類,重寫acceot方法,在方法中自己定義過濾規則。

      File[ ] files = dir.listFiles( ( File d, String name) ->{

      return new File(d,name).isDirectory );

      });

      上述的簡化lambda:

      File[ ] files = dir.listFiles( ( d , name) -> new File(d,name).isDirectory );

      Java

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:在一列中輸入內容,怎樣實現輸入的數據不會重復(如何輸入一列相同數據)
      下一篇:表格轉折線圖(表格轉折線圖x軸錯誤)
      相關文章
      jlzzjlzz亚洲jzjzjz| 亚洲明星合成图综合区在线| 亚洲国产成人精品激情| 亚洲日产2021三区在线| 老汉色老汉首页a亚洲| 亚洲av日韩av无码| 亚洲AV日韩AV鸥美在线观看| 亚洲AV午夜成人影院老师机影院| 国产亚洲A∨片在线观看| 亚洲国产精品一区第二页 | 亚洲线精品一区二区三区 | 亚洲一区二区三区AV无码| 亚洲日韩欧洲无码av夜夜摸| 亚洲综合另类小说色区| 日日噜噜噜噜夜夜爽亚洲精品| 久久精品国产亚洲精品| 国产偷国产偷亚洲清高动态图 | 亚洲AV一二三区成人影片| 亚洲中文字幕AV在天堂| 亚洲熟妇AV一区二区三区宅男| 亚洲 欧洲 自拍 另类 校园| 亚洲熟妇成人精品一区| 国产成人亚洲精品电影| 亚洲欧洲一区二区三区| 亚洲乱码中文字幕综合| 久久国产亚洲电影天堂| 91精品国产亚洲爽啪在线观看| 亚洲精品人成电影网| 亚洲一级毛片免费观看| 亚洲色在线无码国产精品不卡| 亚洲成a人片在线观看天堂无码| 国产综合成人亚洲区| 国产a v无码专区亚洲av| 亚洲无人区一区二区三区| 亚洲免费在线播放| 亚洲国产夜色在线观看| 亚洲欧洲日产国码久在线| 亚洲AⅤ永久无码精品AA| 亚洲中文字幕无码一久久区| 无码专区—VA亚洲V天堂| 亚洲国产精品久久丫|