八. 输入输出(IO)操作6.文件与目录管理
目錄是管理文件的特殊機制,同類文件保存在同一個目錄下不僅可以簡化文件管理,而且還可以提高工作效率。Java 語言在 java.io 包中定義了一個 File 類專門用來管理磁盤文件和目錄。
每個 File 類對象表示一個磁盤文件或目錄,其對象屬性中包含了文件或目錄的相關信息。通過調用 File 類提供的各種方法,能夠創建、刪除、重名名文件、判斷文件的讀寫權限以及是否存在,設置和查詢文件的最近修改時間等。不同操作系統具有不同的文件系統組織方式,通過使用 File 類對象,Java 程序可以用與平臺無關的、統一的方式來處理文件和目錄。
創建 File 類的對象
創建 File 類對象需要給出其所對應的文件名或目錄名,File 類的構造方法如表 10-9 所示。
| public File(String path) | 指定與 File 對象關聯的文件或目錄名,path 可以包含路徑及文件和目錄名 |
| public File(String path, String name) | 以 path 為路徑,以 name 為文件或目錄名創建 File 對象 |
| public File(File dir, String name) | 用現有的 File 對象 dir 作為目錄,以 name 作為文件或目錄名創建 File 對象 |
| public File(UR ui) | 使用給定的統一資源定位符來定位文件 |
在使用 File 類的構造方法時,需要注意下面幾點:
(1)path 參數可以是絕對路徑,也可以是相對路徑,也可以是磁盤上的某個目錄。
( 2)由于不同操作系統使用的目錄分隔符不同,可以使用 System 類的一個靜態變量System.dirSep,來實現在不同操作系統下都通用的路徑。如:
? ? "d:"+System.dirSep+"myjava"+System.dirSep+"file www.qicaiyulept.cn?"
獲取屬性和操作
借助 File 對象,可以獲取文件和相關目錄的屬性信息并可以對其進行管理和操作。表 10-10列出了其常用的方法及說明。
| boolean canRead() | 如果文件可讀,返回真,否則返回假 |
| boolean canWrite() | 如果文件可寫,返回真,否則返回假 |
| boolean exists() | 判斷文件或目錄是否存在 |
| boolean createNewFile() | 若文件不存在,則創建指定名字的空文件,并返回真,若不存在返回假 |
| boolean isFile() | 判斷對象是否代表有效文件 |
| boolean isDirectory() | 判斷對象是否代表有效目錄 |
| boolean equals(File f) | 比較兩個文件或目錄是否相同 |
| string getName() | 返回文件名或目錄名的字符串 |
| string getPath() | 返回文件或目錄路徑的字符串 |
| long length() | 返回文件的字節數,若 File 對象代表目錄,則返回 0 |
| long lastModified() | 返回文件或目錄最近一次修改的時間 |
| String[] list() | 將目錄中所有文件名保存在字符串數組中并返回,若 File 對象不是目錄返回 null |
| boolean delete() | 刪除文件或目錄,必須是空目錄才能刪除,刪除成功返回真,否則返回假 |
| boolean mkdir() | 創建當前目錄的子目錄,成功返回真,否則返回假 |
| boolean renameTo(File newFile) | 將文件重命名為指定的文件名 |
【例 10-11】判斷輸入的絕對路徑是代表一個文件或一個目錄。若是文件輸出此文件的絕對路徑,并判斷此文件的文件屬性(是否可讀寫或隱藏);若是目錄則輸出該目錄下所有文件(不包括隱藏文件)(查看源代碼)。
運行結果如圖 10-11 所示:
圖 10-11 ?輸入一個文件路徑后例 10_11 的運行結果
轉載于:https://www.cnblogs.com/ok932343846/p/7049499.html
總結
以上是生活随笔為你收集整理的八. 输入输出(IO)操作6.文件与目录管理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Excel+DDT数据驱动实例
- 下一篇: [LeetCode] Linked Li