您好,登錄后才能下訂單哦!
本文將為大家詳細介紹“Java IO中File類是什么”,內容步驟清晰詳細,細節處理妥當,而小編每天都會更新不同的知識點,希望這篇“Java IO中File類是什么”能夠給你意想不到的收獲,請大家跟著小編的思路慢慢深入,具體內容如下,一起去收獲新知識吧。
File 類:文件和目錄路徑名的抽象表示。
注意:File 類只能操作文件的屬性,文件的內容是不能操作的。
我們知道,各個平臺之間的路徑分隔符是不一樣的。
①、對于UNIX平臺,絕對路徑名的前綴始終為"/"
。 相對路徑名沒有前綴。 表示根目錄的抽象路徑名具有前綴"/"
和空名稱序列。
②、對于Microsoft Windows平臺,包含驅動器說明符的路徑名的前綴由后面跟著":"
的驅動器號組成,如果路徑名是絕對的,則可能后跟"\\"
。 UNC路徑名的前綴為"\\\\"
; 主機名和共享名稱是名稱序列中的前兩個名稱沒有有指定驅動器的相對路徑名沒有前綴。
那么為了屏蔽各個平臺之間的分隔符差異,我們在構造 File 類的時候(如何構造,請看下面第二點),就可以使用上述 Java 為我們提供的字段。
那么我們可以看出:
File.pathSeparator
指的是分隔連續多個路徑字符串的分隔符
File.separator
是用來分隔同一個路徑字符串中的目錄的
如何使用上述構造方法,請看如下例子:
//不使用 Java 提供的分隔符字段,注意:這樣寫只能在 Windows 平臺有效 File f1 = new File("D:\\IO\\a.txt"); //使用 Java 提供的分隔符 File f2 = new File("D:"+File.separator+"IO"+File.separator+"a.txt"); System.out.println(f1);//輸出 D:\IO\a.txt System.out.println(f2);//輸出 D:\IO\a.txt //File(File parent, String child) //從父抽象路徑名和子路徑名字符串創建新的 File實例。 File f3 = new File("D:"); File f4 = new File(f3,"IO"); System.out.println(f4); //D:\IO //File(String pathname) //通過將給定的路徑名字符串轉換為抽象路徑名來創建新的 File實例。 File f5 = new File("D:"+File.separator+"IO"+File.separator+"a.txt"); System.out.println(f5); //D:\IO\a.txt //File(String parent, String child) //從父路徑名字符串和子路徑名字符串創建新的 File實例。 File f6 = new File("D:","IO\\a.txt"); System.out.println(f6); //D:\IO\a.txt
1.boolean createNewFile()
不存在返回true 存在返回false
2.boolean mkdir()
創建目錄,如果上一級目錄不存在,則會創建失敗
3.boolean mkdirs()
創建多級目錄,如果上一級目錄不存在也會自動創建
1.boolean delete()
刪除文件或目錄,如果表示目錄,則目錄下必須為空才能刪除
2.boolean deleteOnExit()
文件使用完成后刪除
1.boolean canExecute()
判斷文件是否可執行
2.boolean canRead()
判斷文件是否可讀
3.boolean canWrite()
判斷文件是否可寫
4.boolean exists()
判斷文件或目錄是否存在
5.boolean isDirectory()
判斷此路徑是否為一個目錄
6.boolean isFile()
判斷是否為一個文件
7.boolean isHidden()
判斷是否為隱藏文件
8.boolean isAbsolute()
判斷是否是絕對路徑 文件不存在也能判斷
1.String getName()
獲取此路徑表示的文件或目錄名稱
2.String getPath()
將此路徑名轉換為路徑名字符串
3.String getAbsolutePath()
返回此抽象路徑名的絕對形式
4.String getParent()
//如果沒有父目錄返回null
5.long lastModified()
//獲取最后一次修改的時間
6.long length()
返回由此抽象路徑名表示的文件的長度。
7.boolean renameTo(File f)
重命名由此抽象路徑名表示的文件。
8.File[] liseRoots()
//獲取機器盤符
9.String[] list()
返回一個字符串數組,命名由此抽象路徑名表示的目錄中的文件和目錄。
10.String[] list(FilenameFilter filter)
返回一個字符串數組,命名由此抽象路徑名表示的目錄中滿足指定過濾器的文件和目錄。
//File(File parent, String child) //從父抽象路徑名和子路徑名字符串創建新的 File實例。 File dir = new File("D:"+File.separator+"IO"); File file = new File(dir,"a.txt"); //判斷dir 是否存在且表示一個目錄 if(!(dir.exists()||dir.isDirectory())){ //如果 dir 不存在,則創建這個目錄 dir.mkdirs(); //根據目錄和文件名,創建 a.txt文件 file.createNewFile(); } //返回由此抽象路徑名表示的文件或目錄的名稱。 這只是路徑名稱序列中的最后一個名字。 如果路徑名的名稱序列為空,則返回空字符串。 System.out.println(file.getName()); //a.txt //返回此抽象路徑名的父null的路徑名字符串,如果此路徑名未命名為父目錄,則返回null。 System.out.println(file.getParent());//D:\IO //將此抽象路徑名轉換為路徑名字符串。 結果字符串使用default name-separator character以名稱順序分隔名稱。 System.out.println(file.getPath()); //D:\IO\a.txt
①、打印給定目錄下的所有文件夾和文件夾里面的內容
public static void getFileList(File file){ //第一級子目錄 File[] files = file.listFiles(); for(File f:files){ //打印目錄和文件 System.out.println(f); if(f.isDirectory()){ getFileList(f); } } }
測試:
public static void main(String[] args) throws Exception { File f = new File("D:"+File.separator+"WebStormFile"); getFileList(f); }
感謝您能讀到這里,小編希望您對“Java IO中File類是什么”這一關鍵問題有了從實踐層面最深刻的體會,具體使用情況還需要大家自己動手實踐使用過才能領會,如果想閱讀更多相關內容的文章,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。