亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Java File類的簡單使用教程(創建、刪除、遍歷與判斷是否存在等)

瀏覽:4日期:2022-08-19 14:14:57
前言

Java文件類以抽象的方式代表文件名和目錄路徑名。該類本身不能用來讀數據或寫數據,它主要用于磁盤上文件和目錄的創建、文件的查找和文件的刪除。做一些非讀寫方面的工作,比如看看文件是否存在、是否可讀寫及遍歷文件目錄等等。要想讀寫數據,必須和其它io流的類配合使用,比如FileInputStream、FileOutputStream等。File對象代表磁盤中實際存在的文件和目錄,以下就通過一些簡單的列子介紹File的基本使用。

這是整個File簡單使用的代碼:

1 package com.tianjh; 2 3 import java.io.File; 4 import java.io.IOException; 5 6 /** 7 * Created on 2020/12/10 8 * File類的基本使用 9 * 10 */ 11 public class FileDemo { 12 public static void main(String[] args) { 13 String dirname = 'D:/Demo'; 14 // 實例化一個File對象 15 File f1 = new File(dirname); 16 17 // 1. 遍歷指定目錄之下的所有文件 18 // 判斷f1對象是否是一個目錄 19 if (f1.isDirectory()) { 20 System.out.println('Directory of ' + dirname); 21 String[] s = f1.list(); 22 // 遍歷s數組,取出數組中的元素進行判斷 23 for (int i = 0; i < s.length; i++) { 24 File f = new File(dirname + '/' + s[i]); 25 if (f.isDirectory()) { 26 System.out.println(s[i] + ' is a directory'); 27 } else { 28 System.out.println(s[i] + ' is a file'); 29 } 30 } 31 } else { 32 // 不是一個目錄 33 System.out.println(dirname + ' is not a directory'); 34 } 35 // expected output: 36 // Directory of D:/Demo 37 // BufferedInputStream.java is a file 38 // BufferedOutputStream.java is a file 39 // childFile is a directory 40 41 /* 42 * 2. 測試指定文件是否可執行 43 * 測試應用程序是否可以執行此抽象路徑名表示的文件 44 * true: 當且僅當存在抽象路徑名,并允許應用程序執行該文件時 45 */ 46 System.out.println(dirname + ' allowed to execute? ' + f1.canExecute()); 47 // expected output: D:/Demo allowed to execute? true 48 49 50 /* 51 * 3. 測試指定文件是否可讀取 52 * 測試應用程序是否可以讀取由此抽象路徑名表示的文件 53 * true: 當且僅當此抽象路徑名指定的文件存在并可由應用程序讀取時; 54 * false: 與true相反 55 */ 56 System.out.println(dirname + ' allowed to read? ' + f1.canRead()); 57 // expected output: D:/Demo allowed to read? true 58 59 /* 60 * 4. 測試指定文件是否可寫 61 * 測試應用程序是否可以修改由此抽象路徑名表示的文件 62 * true: 當且僅當文件系統實際上包含由該抽象路徑名表示的文件并且允許應用程序寫入該文件時; 63 * false: 與true相反 64 */ 65 System.out.println(dirname + ' allowed to write? ' + f1.canWrite()); 66 // expected output: D:/Demo allowed to write? true 67 68 /* 69 * 5. 比較抽象路徑名和參數抽象路徑名是否相等 70 * 比較兩個抽象的路徑名字典是否相等 等于零則相等,小于零則抽象路徑名字典小于參數路徑字典,大于則相反 71 * 比較規則按照字典順序進行排序 72 */ 73 String s1 = 'C:/Boot'; 74 // “D:/Demo” 與 'C:/Boot' 比較 75 System.out.println(f1.compareTo(new File(s1))); 76 // expected output: 1 77 String s2 = 'D:/Deoo'; 78 // “D:/Demo” 與 'D:/Deoo' 比較 79 System.out.println(f1.compareTo(new File(s2))); 80 // expected output: -2 81 82 83 /* 84 * 6. 創建一個新文件 85 * 當且僅當具有該名稱的文件尚不存在時,原子地創建一個由該抽象路徑名命名的新的空文件 86 * true: 如果命名文件不存在并被成功創建; 87 * false: 如果命名文件已經存在 88 */ 89 File f3 = new File('/Boot'); 90 try { 91 System.out.println('/Boot file is created? ' + f3.createNewFile()); 92 // expected output: /Boot file is created? false 93 } catch (IOException e) { 94 e.printStackTrace(); 95 } 96 97 /* 98 * 7. 創建一個目錄 99 * 創建由此抽象路徑名命名的目錄100 */101 String dirnames = 'D:/tmp/boot';102 File f4 = new File(dirnames);103 // 創建一個文件夾,成功則返回true,失敗則返回false。104 // 失敗表明File對象指定的路徑已經存在,或者由于整個路徑還不存在,該文件夾不能被創建。105 System.out.println('create mkdir is ' + f4.mkdir());106 // expected output: create mkdir is true107 108 109 /*110 * 8. 創建一個目錄,包括其不存在的父級目錄111 * 創建一個文件夾和它的所有父文件夾 失敗表明File對象指定的路徑已經存在112 */113 System.out.println('create mkdirs is ' + f4.mkdirs());114 // expected output: create mkdirs is false115 116 117 /*118 * 9. 刪除文件或者目錄119 * 刪除由此抽象路徑名表示的文件或目錄120 * true當且僅當文件或目錄被成功刪除時; false否則121 */122 System.out.println(dirnames + ' deleted is ' + f4.delete());123 // expected output: D:/tmp/boot deleted is true124 125 126 /*127 * 10. 取得抽象路徑的名稱128 * 取到抽象路徑名表示的文件或目錄的名稱129 */130 System.out.println('getName is ' + f1.getName());131 // expected output: getName is Demo132 133 134 /*135 * 11. 取得抽象路徑的字符串136 * 獲得由抽象路徑名轉換為路徑名字符串137 */138 System.out.println('getPath is ' + f1.getPath());139 // expected output: getPath is D:Demo140 141 /*142 * 12. 取得抽象路徑的絕對路徑143 * 獲得此抽象路徑名的絕對路徑名字符串144 */145 System.out.println('Absolute Path is ' + f1.getAbsolutePath());146 // expected output: Absolute Path is D:Demo147 148 149 /*150 * 13. 判斷抽象路徑指定的文件或目錄是否存在151 * 測試此抽象路徑名表示的文件或目錄是否存在152 * true: 當且僅當存在由此抽象路徑名表示的文件或目錄時;153 * false: 與true相反154 */155 System.out.println(f1.exists() ? 'exist' : 'not');156 // expected output: exist157 }158 159 }FileDemo.Java下面分別介紹常用的幾種方法:

1、遍歷指定目錄之下的所有文件( 遍歷' D:/Demo '中的所有文件及目錄)

D磁盤中Demo目錄的結果如下所示:

Java File類的簡單使用教程(創建、刪除、遍歷與判斷是否存在等)

示例代碼:

String dirname = 'D:/Demo'; // 實例化一個File對象 File f1 = new File(dirname); // 1. 遍歷指定目錄之下的所有文件 // 判斷f1對象是否是一個目錄 if (f1.isDirectory()) { System.out.println('Directory of ' + dirname); String[] s = f1.list(); // 遍歷s數組,取出數組中的元素進行判斷 for (int i = 0; i < s.length; i++) { File f = new File(dirname + '/' + s[i]); if (f.isDirectory()) { System.out.println(s[i] + ' is a directory'); } else { System.out.println(s[i] + ' is a file'); } } } else { // 不是一個目錄 System.out.println(dirname + ' is not a directory'); } // expected output: // Directory of D:/Demo // BufferedInputStream.java is a file // BufferedOutputStream.java is a file // childFile is a directory

輸出結果:

Java File類的簡單使用教程(創建、刪除、遍歷與判斷是否存在等)

2、測試指定文件是否可執行

/* * 2. 測試指定文件是否可執行 * 測試應用程序是否可以執行此抽象路徑名表示的文件 * true: 當且僅當存在抽象路徑名,并允許應用程序執行該文件時 */ System.out.println(dirname + ' allowed to execute? ' + f1.canExecute()); // expected output: D:/Demo allowed to execute? true

3、測試指定文件是否可讀取

/* * 3. 測試指定文件是否可讀取 * 測試應用程序是否可以讀取由此抽象路徑名表示的文件 * true: 當且僅當此抽象路徑名指定的文件存在并可由應用程序讀取時; * false: 與true相反 */ System.out.println(dirname + ' allowed to read? ' + f1.canRead()); // expected output: D:/Demo allowed to read? true

4、測試指定文件是否可寫

/* * 4. 測試指定文件是否可寫 * 測試應用程序是否可以修改由此抽象路徑名表示的文件 * true: 當且僅當文件系統實際上包含由該抽象路徑名表示的文件并且允許應用程序寫入該文件時; * false: 與true相反 */ System.out.println(dirname + ' allowed to write? ' + f1.canWrite()); // expected output: D:/Demo allowed to write? true

樣例2、3、4的結果可參考Demo 的屬性

Java File類的簡單使用教程(創建、刪除、遍歷與判斷是否存在等)

5、比較抽象路徑名和參數抽象路徑名是否相等,根據字典順序進行比較

/* * 5. 比較抽象路徑名和參數抽象路徑名是否相等 * 比較兩個抽象的路徑名字典是否相等 等于零則相等,小于零則抽象路徑名字典小于參數路徑字典,大于則相反 * 比較規則按照字典順序進行排序 */ String s1 = 'C:/Boot'; // “D:/Demo” 與 'C:/Boot' 比較 System.out.println(f1.compareTo(new File(s1))); // expected output: 1 String s2 = 'D:/Deoo'; // “D:/Demo” 與 'D:/Deoo' 比較 System.out.println(f1.compareTo(new File(s2))); // expected output: -2

結果:

Java File類的簡單使用教程(創建、刪除、遍歷與判斷是否存在等)

6、創建一個新文件

/* * 6. 創建一個新文件 * 當且僅當具有該名稱的文件尚不存在時,原子地創建一個由該抽象路徑名命名的新的空文件 * true: 如果命名文件不存在并被成功創建; * false: 如果命名文件已經存在 */ File f3 = new File('/Boot'); try { System.out.println('/Boot file is created? ' + f3.createNewFile()); // expected output: /Boot file is created? false } catch (IOException e) { e.printStackTrace(); }

結果:

Java File類的簡單使用教程(創建、刪除、遍歷與判斷是否存在等)

7、創建一個目錄

/* * 7. 創建一個目錄 * 創建由此抽象路徑名命名的目錄 */ String dirnames = 'D:/tmp/boot'; File f4 = new File(dirnames); // 創建一個文件夾,成功則返回true,失敗則返回false。 // 失敗表明File對象指定的路徑已經存在,或者由于整個路徑還不存在,該文件夾不能被創建。 System.out.println('create mkdir is ' + f4.mkdir()); // expected output: create mkdir is true

結果:

Java File類的簡單使用教程(創建、刪除、遍歷與判斷是否存在等)

8、創建一個目錄,包括其不存在的父級目錄,因為在上列中創建了對應的目錄文件,所有mkdirs創建就返還false

/* * 8. 創建一個目錄,包括其不存在的父級目錄 * 創建一個文件夾和它的所有父文件夾 失敗表明File對象指定的路徑已經存在 */System.out.println('create mkdirs is ' + f4.mkdirs());// expected output: create mkdirs is false

9、刪除文件或者目錄(刪除前面創建的/tmp路徑下的boot)

/* * 9. 刪除文件或者目錄 * 刪除由此抽象路徑名表示的文件或目錄 * true當且僅當文件或目錄被成功刪除時; false否則 */ System.out.println(dirnames + ' deleted is ' + f4.delete()); // expected output: D:/tmp/boot deleted is true

結果:

Java File類的簡單使用教程(創建、刪除、遍歷與判斷是否存在等)

10、取得抽象路徑的名稱

/* * 10. 取得抽象路徑的名稱 * 取到抽象路徑名表示的文件或目錄的名稱 */ System.out.println('getName is ' + f1.getName()); // expected output: getName is Demo

結果:

Java File類的簡單使用教程(創建、刪除、遍歷與判斷是否存在等)

11、取得抽象路徑的字符串

/* * 11. 取得抽象路徑的字符串 * 獲得由抽象路徑名轉換為路徑名字符串 */ System.out.println('getPath is ' + f1.getPath()); // expected output: getPath is D:Demo

結果:

Java File類的簡單使用教程(創建、刪除、遍歷與判斷是否存在等)

12、取得抽象路徑的絕對路徑

/* * 12. 取得抽象路徑的絕對路徑 * 獲得此抽象路徑名的絕對路徑名字符串 */ System.out.println('Absolute Path is ' + f1.getAbsolutePath()); // expected output: Absolute Path is D:Demo

結果:

Java File類的簡單使用教程(創建、刪除、遍歷與判斷是否存在等)

13、判斷抽象路徑指定的文件或目錄是否存在

/* * 13. 判斷抽象路徑指定的文件或目錄是否存在 * 測試此抽象路徑名表示的文件或目錄是否存在 * true: 當且僅當存在由此抽象路徑名表示的文件或目錄時; * false: 與true相反 */ System.out.println(f1.exists() ? 'exist' : 'not'); // expected output: exist

結果:

Java File類的簡單使用教程(創建、刪除、遍歷與判斷是否存在等)

到此這篇關于Java File類簡單使用(創建、刪除、遍歷與判斷是否存在等)的文章就介紹到這了,更多相關Java File類簡單使用內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Java
相關文章:
主站蜘蛛池模板: 国产精品免费大片一区二区 | 欧美一级三级 | 欧美色视| 亚洲欧美日韩在线精品2021 | 日韩欧美中文字幕出 | 国产精品日产三级在线观看 | 一区二区在线播放福利视频 | 视频一区二区不卡 | 国产一级片网站 | www日韩免费高清视频 | 麻豆传媒视频网站 | 艾小青亚洲专区在线播放 | 成人在线激情视频 | 国产精品2020观看久久 | 青草视频网站 | 九九热精品视频在线播放 | 日韩黄色免费观看 | 看国产一级毛片 | 亚洲美色综合天天久久综合精品 | 国产三级精品三级在线观看 | 亚洲欧美在线免费 | 亚洲无限乱码一二三四区 | 久久精品2021国产 | 国产美女精品在线 | 思99re久久这里只有精品首页 | 黄色大片网站在线观看 | 美女一级a毛片免费观看 | 黄色录像日本 | 亚洲精品不卡久久久久久 | 日本xxx片免费高清在线 | 日本一二三本免费视频 | 男女午夜爱爱久久无遮挡 | 亚洲 日本 欧美 日韩精品 | 色婷婷一区二区三区四区成人 | 国产91网 | 久久免费成人 | 免费观看性欧美毛片 | 国产成人黄网在线免 | 国产在线一区二区三区在线 | 婷婷99av综合 | 国产综合色在线视频区色吧图片 |