第三次学JAVA再学不好就吃翔(part99)--File类
學習筆記,僅供參考,有錯必究
文章目錄
- File類
- 構造方法
- 舉個例子
- File類創建功能
- 舉個例子
- File類的重命名及刪除功能
- 舉個例子
- 注意事項
- File類的判斷功能
- File類的獲取功能
- 舉個例子
File類
File是java.io包下的一個類,它是文件和目錄路徑名的抽象表示形式。
構造方法
- 構造方法1
根據 parent 抽象路徑名和 child 路徑名字符串創建一個新 File 實例。
- 構造方法2
根據 parent 路徑名字符串和 child 路徑名字符串創建一個新 File 實例。
- 構造方法3
通過將給定路徑名字符串轉換為抽象路徑名來創建一個新 File 實例。
舉個例子
package com.guiyang.bean;import java.io.File;public class Demo1_File {public static void main(String[] args) {demo1();System.out.println("----------");demo2();System.out.println("----------");File father = new File("C:\\Users\\goatbishop\\Desktop\\data");//封裝為file對象的father, 我們可以使用File類里的方法對其進行慚怍System.out.println(father.exists());String son1 = "data0710.csv";String son2 = "dataTest.csv";File file1 = new File(father, son1);File file2 = new File(father, son2);System.out.println(file1.exists());System.out.println(file2.exists());}private static void demo2() {String father = "C:\\Users\\goatbishop\\Desktop\\data";String son = "data0710.csv";File file = new File(father, son);System.out.println(file.exists());}private static void demo1() {String path = "C:\\Users\\goatbishop\\Desktop\\data\\data0710.csv";File file = new File(path);System.out.println(file.exists());} }
輸出:
true ---------- true ---------- true true falseFile類創建功能
- createNewFile
當且僅當不存在具有此抽象路徑名指定名稱的文件時,不可分地創建一個新的空文件。檢查文件是否存在,若不存在則創建該文件,這是單個操作,對于其他所有可能影響該文件的文件系統活動來說,該操作是不可分的。 簡而言之,創建文件,如果存在這樣的文件,就不創建了。
- mkdir
創建此抽象路徑名指定的目錄。 簡而言之,創建文件夾,如果存在這樣的文件夾,就不創建了。
- mkdirs
創建此抽象路徑名指定的目錄,包括所有必需但不存在的父目錄。注意,此操作失敗時也可能已經成功地創建了一部分必需的父目錄。 簡而言之,創建文件夾,如果父文件夾不存在,會幫我們創建出來
舉個例子
在進行一系列操作之前,先看一下我們項目下的文件及文件夾:
很好,現在我們運行以下代碼:
package com.guiyang.bean;import java.io.File; import java.io.IOException;public class Demo2_File {public static void main(String[] args) throws IOException {File file = new File("yyy.txt");System.out.println(file.createNewFile());//創建文件File file2 = new File("aaa");System.out.println(file2.mkdir());//創建目錄File file3 = new File("bbb\\ccc");//創建多級目錄System.out.println(file3.mkdirs());} }返回:
true true true可以看到,均為true,表示我們創建成功了!
再看一下我們項目文件夾下的情況:
Very Well !
File類的重命名及刪除功能
- renameTo
重新命名此抽象路徑名表示的文件。 簡而言之,把文件重命名為指定的文件路徑。
- delete
刪除此抽象路徑名表示的文件或目錄。如果此路徑名表示一個目錄,則該目錄必須為空才能刪除。 簡而言之,刪除文件或者文件夾。
舉個例子
- 重命名文件
首先查看項目下文件:
將yyy.txt改名為xxx.txt
package com.guiyang.restudy3;import java.io.File;public class D3FileMethod {public static void main(String[] args) {File file1 = new File("yyy.txt");File file2 = new File("xxx.txt");System.out.println(file1.renameTo(file2));}}輸出:
true查看項目下文件夾:
注意!如果我們更改文件路徑,那么就不是重命名了,而是剪切源文件并對其進行改名。
- 刪除文件
輸出:
true此時,我們的項目文件夾下已經沒有xxx.txt文件了。
注意!如果要刪除一個文件夾,那么這個文件夾下一定是空的。
注意事項
- Java中的刪除不走回收站;
- 要刪除一個文件夾,請注意該文件夾內不能包含文件或者文件夾。
File類的判斷功能
- isDirectory
測試此抽象路徑名表示的文件是否是一個目錄。
- isFile
測試此抽象路徑名表示的文件是否是一個標準文件。如果該文件不是一個目錄,并且滿足其他與系統有關的標準,那么該文件是標準文件。由 Java 應用程序創建的所有非目錄文件一定是標準文件。
- exists
測試此抽象路徑名表示的文件或目錄是否存在。
- canRead
測試應用程序是否可以讀取此抽象路徑名表示的文件。 簡而言之,是否可讀。
- canWrite
測試應用程序是否可以修改此抽象路徑名表示的文件。 簡而言之,是否可寫。
- isHidden
測試此抽象路徑名指定的文件是否是一個隱藏文件。隱藏 的具體定義與系統有關。在 UNIX 系統上,如果文件名以句點字符 (’.’) 開頭,則認為該文件被隱藏。在 Microsoft Windows 系統上,如果在文件系統中文件被標記為隱藏,則認為該文件被隱藏。
File類的獲取功能
- getAbsolutePath
返回此抽象路徑名的絕對路徑名字符串。簡而言之,獲取絕對路徑
- getPath
將此抽象路徑名轉換為一個路徑名字符串。所得字符串使用默認名稱分隔符分隔名稱序列中的名稱。簡而言之,獲取構造方法中傳入的路徑。
- getName
返回由此抽象路徑名表示的文件或目錄的名稱。該名稱是路徑名名稱序列中的最后一個名稱。如果路徑名名稱序列為空,則返回空字符串。
- length
返回由此抽象路徑名表示的文件的長度。如果此路徑名表示一個目錄,則返回值是不確定的。 簡而言之,獲取文件字節數。
- lastModified
獲取最后一次的修改時間,毫秒值.
- list
獲取指定目錄下的所有文件或者文件夾的名稱數組
- listFiles
獲取指定目錄下的所有文件或者文件夾的File數組
舉個例子
package com.guiyang.bean;import java.io.File; import java.io.FileNotFoundException; import java.io.FilenameFilter; import java.lang.reflect.Field; import java.sql.Date; import java.sql.Time; import java.text.SimpleDateFormat;import javax.xml.crypto.Data;public class Demo5_FileMethed {public static void main(String[] args) {demo1();System.out.println("--------");String path = "C:\\Users\\goatbishop\\Desktop\\data";File file = new File(path);demo2(file);}private static void demo2(File file) {String[] lsStrings = file.list();for (String string : lsStrings) {System.out.println(string);}System.out.println("--------------");File[] lFiles = file.listFiles();for (File file2 : lFiles) {System.out.println(file2);}}private static void demo1() {File file = new File("C:\\Users\\goatbishop\\Desktop\\data\\data0710.csv");System.out.println(file.getAbsolutePath());System.out.println(file.getPath());System.out.println(file.getName());System.out.println(file.length());System.out.println(file.lastModified());Date time = new Date(file.lastModified());SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日HH:mm:ss");System.out.println(sdf.format(time));} }
輸出:
C:\Users\goatbishop\Desktop\data\data0710.csv C:\Users\goatbishop\Desktop\data\data0710.csv data0710.csv 144140 1594346162292 2020年07月10日09:56:02 -------- .Rhistory data0710.csv PrimaryIndicatorsScore.html PrimaryIndicatorsScore.Rmd score.csv test.R weight.csv 得分.xlsx -------------- C:\Users\goatbishop\Desktop\data\.Rhistory C:\Users\goatbishop\Desktop\data\data0710.csv C:\Users\goatbishop\Desktop\data\PrimaryIndicatorsScore.html C:\Users\goatbishop\Desktop\data\PrimaryIndicatorsScore.Rmd C:\Users\goatbishop\Desktop\data\score.csv C:\Users\goatbishop\Desktop\data\test.R C:\Users\goatbishop\Desktop\data\weight.csv C:\Users\goatbishop\Desktop\data\得分.xlsx總結
以上是生活随笔為你收集整理的第三次学JAVA再学不好就吃翔(part99)--File类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 手工达人耗时2月制造1.8米巨型键盘:可
- 下一篇: 美国付费有线电视遭遇流媒体冲击,用户数跌