一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java中File文件操作類的基礎用法

Java中File文件操作類的基礎用法

2021-05-13 11:22MAGIC_JSS Java教程

這篇文章主要給大家介紹了關于Java中File文件操作類基礎用法的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用File類具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

前言

眾所周知java提供file類,讓我們對文件進行操作,下面就來簡單整理了一下file類的用法。 話不多說了,來一起看看詳細的介紹吧

1.基本概念

file:文件和目錄路徑名的抽象表示形式,代表文件或者文件夾。

2.構造方法

?
1
2
3
4
5
6
7
8
// 根據parent抽象路徑名和child路徑名字符串創建一個新file實例
file(file parent, string child)
// 通過將給定路徑名字符串轉換為抽象路徑名來創建一個新file實例
file(string pathname)
// 根據parent路徑名字符串和child路徑名字符串創建一個新file實例
file(string parent, string child)
// 通過將給定的file:uri轉換為一個抽象路徑名來創建一個新的file實例
file(uri uri)

3.常用方法

(1).創建功能

// 創建此抽象路徑名指定的目錄
boolean mkdir()
// 創建此抽象路徑名指定的目錄,包括所有必需但不存在的父目錄
boolean mkdirs()
// 當且僅當不存在具有此抽象路徑名指定名稱的文件時,不可分地創建一個新的空文件
boolean createnewfile()
// 在默認臨時文件目錄中創建一個空文件,使用給定前綴和后綴生成其名稱
static file createtempfile(string prefix, string suffix)
// 在指定目錄中創建一個新的空文件,使用給定的前綴和后綴字符串生成其名稱
static file createtempfile(string prefix, string suffix, file directory)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// 構造方法一
file file1 = new file("f://file1");
// 構造方法二
file file2 = new file("f://file1", "file2");
// 構造方法三
file file3 = new file(file2, "file3.txt");
 
// 創建目錄并返回是否創建成功,如果目錄存在則返回false
boolean b1 = file1.mkdir();
system.out.println(b1);// true
// 創建目錄
boolean b2 = file2.mkdir();
system.out.println(b2);// true
// 創建文件
// 在f盤下創建/file1/file2/file3.txt文件
boolean b3 = file3.createnewfile();
system.out.println(b3);// true
 
// 創建空文件并指定前綴和后綴
// 在f盤下創建/file1/file2/file4.....exe文件
file.createtempfile("file4", ".exe", file2);

Java中File文件操作類的基礎用法

注:三種構造方法效果是等同的,沒有本質區別;創建目錄mkdir()、mkdirs()方法,mkdirs()方法創建目錄時,如果待創建目錄的上幾級目錄不存在則一并創建,mkdir()則只能創建單級目錄。

(2).刪除功能

// 刪除此抽象路徑名表示的文件或目錄
boolean delete()

?
1
2
3
4
//刪除目錄
system.out.println(file1.delete()); // false
//刪除文件
system.out.println(file3.delete());// true

注:刪除操作時,刪除的是目錄,則必須保證是空目錄。

(3).判斷功能

// 測試此抽象路徑名表示的文件或目錄是否存在
boolean exists()
// 測試此抽象路徑名表示的文件是否是一個目錄
boolean isdirectory()
// 測試此抽象路徑名表示的文件是否是一個標準文件
boolean isfile()
// 測試此抽象路徑名指定的文件是否是一個隱藏文件
boolean ishidden()
// 測試應用程序是否可以讀取此抽象路徑名表示的文件
boolean canread()
// 測試應用程序是否可以修改此抽象路徑名表示的文件
boolean canwrite()

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
file file = new file("f://hello");
file file2 = new file(file, "blog.txt");
// 判斷是否存在
if (!file.exists()) {
 // 創建目錄
 file.mkdir();
}
if (file2.exists()) {
 // 創建文件
 file2.createnewfile();
}
 
// 判斷是否是目錄
system.out.println(file.isdirectory());// true
// 判斷是否是文件
system.out.println(file.isfile());// false
 
system.out.println(file2.isdirectory());// false
system.out.println(file2.isfile());// true
system.out.println(file2.ishidden());// false
// 判斷是否是隱藏的
system.out.println(file2.ishidden());// false
// 判斷是否可讀
system.out.println(file2.canread());// true
// 判斷是否可寫
system.out.println(file2.canwrite());// true

注:可以自主修改文件可讀性,查看不同輸出。

(4).獲取功能

(1).基本獲取功能

// 返回由此抽象路徑名表示的文件或目錄的名稱
string getname()
// 返回此抽象路徑名的絕對路徑名形式
file getabsolutefile()
// 返回此抽象路徑名的絕對路徑名字符串
string getabsolutepath()
// 將此抽象路徑名轉換為一個路徑名字符串
string getpath()
// 返回此抽象路徑名表示的文件最后一次被修改的時間
long lastmodified()

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
file file = new file("f://hello");
file file2 = new file(file, "blog.txt");
// 判斷文件或目錄是否存在
if (!file.exists()) {
 // 不存在則創建
 file.mkdir();
}
if (file2.exists()) {
 // 創建文件
 file2.createnewfile();
}
//獲取文件名或者目錄名
system.out.println(file2.getname());// blog.txt
//獲取文件或目錄的絕對路徑
system.out.println(file2.getabsolutepath());// f:\hello\blog.txt
//獲取文件或目錄的路徑名(絕對路徑或者相對路徑)
system.out.println(file2.getpath());// f:\hello\blog.txt
//獲取文件或目錄修改的最后時間返回毫秒值
system.out.println(file2.lastmodified());// 1463734158963

(2).迭代獲取功能,過濾器功能

// 返回一個字符串數組,這些字符串指定此抽象路徑名表示的目錄中的文件和目錄
string[] list()
// 返回一個字符串數組,這些字符串指定此抽象路徑名表示的目錄中滿足指定過濾器的文件和目錄
string[] list(filenamefilter filter)
// 返回一個抽象路徑名數組,這些路徑名表示此抽象路徑名表示的目錄中的文件
file[] listfiles()
// 返回抽象路徑名數組,這些路徑名表示此抽象路徑名表示的目錄中滿足指定過濾器的文件和目錄
file[] listfiles(filefilter filter)
// 返回抽象路徑名數組,這些路徑名表示此抽象路徑名表示的目錄中滿足指定過濾器的文件和目錄
file[] listfiles(filenamefilter filter)

圖示:先看下f盤里面的東東

Java中File文件操作類的基礎用法

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
file file = new file("f://");
 
// 獲取抽象路徑名下的文件和目錄
string[] s = file.list();
// 過濾文件或者目錄名
string[] ss = file.list(new filenamefilter() {
 
 public boolean accept(file dir, string name) {
  // 返回以.png結尾的文件或者目錄名
  // 控制返回值判斷是否添加到數組中
  return name.endswith(".png");
 }
});
 
// 增強for輸出
for (string string : s) {
 system.out.print(string + " ");// $recycle.bin android4.0黑馬 android視頻......等等
}
 
// 增強for
for (string string : ss) {
 system.out.print(string + " ");// ic_ptr_loading.png ic_ptr_pull.png ic_ptr_release.png
}
 
// 獲取抽象路徑名下的文件和目錄對象
file[] files = file.listfiles();
// 獲取抽象路徑名下的文件和目錄對象,添加文件過濾
file[] files2 = file.listfiles(new filefilter() {
 
 public boolean accept(file pathname) {
  // 判斷是否是隱藏目錄
  return (pathname.isdirectory()&&pathname.ishidden());
 }
});
 
// 獲取抽象路徑名下的文件和目錄對象,添加文件名過濾
file[] files3 = file.listfiles(new filenamefilter() {
 
 public boolean accept(file dir, string name) {
  // 判斷是否是以png結尾的文件
  return (new file(dir, name).isfile())&&name.endswith(".png");
 }
});
 
for (file f : files) {
 system.out.print(f.getname()+" ");//$recycle.bin android4.0黑馬 android視頻......等等
system.out.println();
for (file f : files2) {
 system.out.print(f.getname()+" ");//$recycle.bin ghos
}
 system.out.println();
for (file f : files3) {
 system.out.print(f.getname());//ic_ptr_loading.pngic_ptr_pull.pngic_ptr_release.png
}

(5).重命名功能

// 重新命名此抽象路徑名表示的文件
boolean renameto(file dest)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// 重新命名此抽象路徑名表示的文件
// boolean renameto(file dest)
 
file file = new file("f://");
file[] files = file.listfiles();
 
for (int i = 0; i < files.length; i++) {
 file f = files[i];
 //判斷是否是以.png結尾的文件
 if (f.isfile() && f.getname().endswith(".png")) {
  // 更改文件名,renameto()接收file對象 ,這里該對象并未指定盤符
  boolean b = f.renameto(new file("pic" + i + ".png"));
  system.out.println(b);
  // true
  // true
  // true
 }
}

圖示:

Java中File文件操作類的基礎用法

Java中File文件操作類的基礎用法

注:更改文件或目錄名時,renameto()方法參數對象如果不指定盤的話,默認會將文件剪切到項目目錄下(由上面截圖可以看到);指定盤符的話會根據指定位置剪切到該位置。renameto()方法相當于剪切加重命名。

注:更多方法查看api

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對服務器之家的支持。

原文鏈接:https://blog.csdn.net/magic_jss/article/details/51472205

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 香蕉久久一区二区不卡无毒影院 | 青青草色 | 日产乱码卡1卡2卡三卡四在线 | 国产精品久久久久毛片真精品 | 特级淫片欧美高清视频蜜桃 | 99ri在线精品视频 | 朝鲜女人性猛交 | 114级毛片免费观看 1024亚洲天堂 | 视频一本大道香蕉久在线播放 | 国产精品麻豆99久久 | 五月桃花网婷婷亚洲综合 | 女高h| 亚洲欧美日韩综合在线播放 | 日韩精品视频美在线精品视频 | 欧美精品黑人巨大在线播放 | 双性受合不垅腿攻np | 久久亚洲精品专区蓝色区 | 密臀tv | 污丝瓜视频 | 日本一区二区三区国产 | 亚洲欧美成人综合久久久 | 波多野结衣中文字幕 | ipx358cn出差被男上司在线 | 精品日韩欧美一区二区三区 | 日本十大顶级绝伦推理片 | 亚洲AV蜜桃永久无码精品红樱桃 | 国产日韩高清一区二区三区 | 国产主播99 | 贤妻良母电影日本 | 无遮免费网站在线入口 | 东北疯狂xxxxbbbb中国 | 网址在线观看你懂我意思吧免费的 | 亚洲入口 | 日本漫画工囗全彩内番e绅 日本伦理动漫在线观看 | 久99视频精品免费观看福利 | 国产成人手机在线好好热 | 色老太bbbbb| 国产免费午夜高清 | 日产欧产va1 | 黑人巨摘花第一次出血 | 日本免费一区二区三区四区五六区 |