最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java開(kāi)發(fā)之File類(lèi)詳細(xì)使用方法介紹

 更新時(shí)間:2020年02月19日 15:08:31   作者:我是java小學(xué)渣  
這篇文章主要介紹了java開(kāi)發(fā)之File類(lèi)詳細(xì)使用方法介紹,需要的朋友可以參考下

File類(lèi)簡(jiǎn)介

在 Java 中,F(xiàn)ile 類(lèi)是 java.io 包中唯一代表磁盤(pán)文件本身的對(duì)象。File 類(lèi)定義了一些與平臺(tái)無(wú)關(guān)的方法來(lái)操作文件,F(xiàn)ile類(lèi)主要用來(lái)獲取或處理與磁盤(pán)文件相關(guān)的信息,像文件名、 文件路徑、訪問(wèn)權(quán)限和修改日期等,還可以瀏覽子目錄層次結(jié)構(gòu)。

File 類(lèi)表示處理文件和文件系統(tǒng)的相關(guān)信息。也就是說(shuō),F(xiàn)ile 類(lèi)不具有從文件讀取信息和向文件寫(xiě)入信息的功能,它僅描述文件本身的屬性。

File類(lèi)的相關(guān)方法

1、構(gòu)造方法

File(String pathname) 通過(guò)將給定路徑名字符串轉(zhuǎn)換為抽象路徑名來(lái)創(chuàng)建一個(gè)新 File 實(shí)例。

File(String parent,String child) 根據(jù)指定的父路徑和文件路徑創(chuàng)建一個(gè)新File對(duì)象實(shí)例

File(File parent,String child) 根據(jù)指定的父路徑對(duì)象和文件路徑創(chuàng)建一個(gè)新的File對(duì)象實(shí)例

代碼實(shí)現(xiàn)過(guò)程

/*
 - File的構(gòu)造函數(shù)
 - */
 public static void main(String[] args) {
  //File(String pathname) 將指定路徑名轉(zhuǎn)換成一個(gè)File對(duì)象
  File file = new File("D:\\1.txt");
  System.out.println(file);
  //File(String parent,String child) 根據(jù)指定的父路徑和文件路徑創(chuàng)建File對(duì)象
  File file1 = new File("D:\\a","1.txt");
  System.out.println(file1);
  //File(File parent,String child) 根據(jù)指定的父路徑對(duì)象和文件路徑創(chuàng)建File對(duì)象
  File parent = new File("D:\\a");
  File file2 = new File(parent, "1.txt");
  System.out.println(file2);
  File file3 = new File(new File("D:\\a"),"1.txt");
  System.out.println(file3);

 }

運(yùn)行結(jié)果

2、File類(lèi)創(chuàng)建和刪除功能

boolean createNewFile();指定路徑不存在該文件時(shí)創(chuàng)建文件,返回true 否則false

boolean mkdir() 當(dāng)指定的單擊文件夾不存在時(shí)創(chuàng)建文件夾并返回true 否則false

boolean mkdirs() 但指定的多級(jí)文件夾在某一級(jí)文件夾不存在時(shí),創(chuàng)建多級(jí)文件夾并返回true 否則false

boolean delete() 刪除文件或者刪除單級(jí)文件夾

刪除文件夾,這個(gè)文件夾下面不能有其他的文件和文件夾

代碼實(shí)現(xiàn)過(guò)程

public static void main(String[] args) throws IOException {
 File file = new File("D:\\a\\1.txt");
 File file1 = new File("1.txt");
 boolean flag = file1.createNewFile();
 System.out.println(flag);

 File file2 = new File("b");
 boolean flag2 = file2.mkdir();
 System.out.println(flag);

 File file3 = new File("c\\d\\e");
 boolean d = file1.mkdir();
 boolean c = file1.mkdirs();
 System.out.println(d);
 System.out.println(c);
 File file4 = new File("c.txt");
 System.out.println(file4.mkdir());

 File file5 = new File("b");
 System.out.println(file2.delete());
}

運(yùn)行結(jié)果

3、File類(lèi)的判斷功能

boolean exists() 判斷指定路徑的文件或文件夾是否為空

boolean isAbsolute() 判斷當(dāng)前路徑是否是絕對(duì)路徑

boolean isDirectory() 判斷當(dāng)前的目錄是否存在

boolean isFile() 判斷當(dāng)前的目錄是否是一個(gè)文件

boolean isHidden() 判斷當(dāng)前路徑是否是一隱藏文件

代碼實(shí)現(xiàn)過(guò)程

public static void main(String[] args) throws IOException {
 // method();
 // method2();
 // method3();
 // method4();
}
//判斷文件是否存在
public static void method() throws IOException {
 File file = new File("a.txt");
 file.createNewFile();
 boolean flag = file.exists();
 System.out.println(flag);
}
//判斷當(dāng)前路徑是否為絕對(duì)路徑
public static void method2() throws IOException{
 File file = new File("D:\\a\\1.txt");
 boolean flag = file.isAbsolute();
 System.out.println(flag);
}
//判斷當(dāng)前是文件夾還是文件
public static void method3() throws IOException{
 File file = new File("1.txt");
 File file1 = new File("b");
 file1.mkdir();
 boolean flag = file.isDirectory();
 boolean flag2 = file1.isFile();
 System.out.println(flag);
 System.out.println(flag2);
}
//判斷當(dāng)前路徑是否為隱藏文件
public static void method4() throws IOException{
 File file = new File("D:\\a\\1.txt");
 System.out.println(file.isHidden());
}

運(yùn)行結(jié)果

method()

method2()

method3()

method4()

4、File類(lèi)的獲取功能和修改名字功能

File getAbsoluteFile() 獲取文件的絕對(duì)路徑,返回File對(duì)象

String getAbsolutePath() 獲取文件的絕對(duì)路徑,返回路徑的字符串

String getParent() 獲取當(dāng)前路徑的父級(jí)路徑,以字符串形式返回該父級(jí)路徑

String getName() 獲取文件或文件夾的名稱(chēng)

String getPath() 獲取File對(duì)象中封裝的路徑

long lastModified() 以毫秒值返回最后修改時(shí)間

long length() 返回文件的字節(jié)數(shù)

boolean renameTo(File dest) 將當(dāng)前File對(duì)象所指向的路徑修改為指定File所指向的路徑

代碼實(shí)現(xiàn)過(guò)程:

public static void main(String[] args) throws IOException {
 // method();
 // method2();
 // method3();
 // method4();
}
public static void method(){
 File file = new File("D:\\a\\1.txt");
 File file1 = new File("1.txt");
 //以File對(duì)象返回的形式返回當(dāng)前File對(duì)象所指向的絕對(duì)路徑
 System.out.println(file1.getAbsoluteFile());
 //返回File對(duì)象所指向的絕對(duì)路徑
 System.out.println(file1.getAbsolutePath());
}
public static void method2() throws IOException {
 File file = new File("a.txt");
 File file1 = new File("b","c.txt");
 System.out.println(file1.createNewFile());

 File parent = new File("b");
 File file2 = new File(parent,"c.txt");
 if (!parent.exists()){
  parent.mkdirs();
 }
 System.out.println(file2.createNewFile());
 System.out.println(file2.getParent());
 System.out.println(file2.getParentFile());
}
public static void method3() throws IOException{
 File file = new File("1.txt");
 File file1 = new File("D:\\a\\1.txt");
 File file2 = new File("b");

 System.out.println(file.getName());
 System.out.println(file1.getName());
 System.out.println(file2.getName());

 System.out.println(file.getPath());
 System.out.println(file1.getPath());
 System.out.println(file2.getPath());

 System.out.println(file.lastModified());
 Date date = new Date(1556085068524L);
 System.out.println(date.toLocaleString());

 System.out.println(file.length());
 System.out.println(file2.length());
}
public static void method4() throws IOException{
 File file = new File("a.txt");
 File file1 = new File("e.txt");
 System.out.println(file.renameTo(file1));
}

運(yùn)行結(jié)果

method()

method2()

method3()

method4()

5、File 類(lèi)的其他獲取功能

String[] list(); 以字符串的形式返回當(dāng)前路徑下所有的文件和文件夾的名稱(chēng)

File[] listFile 以File對(duì)象的形式返回當(dāng)前路徑下的所有文件和文件夾名稱(chēng)

Static File[] listRoots() 獲取計(jì)算機(jī)中的所有盤(pán)符

代碼實(shí)現(xiàn)過(guò)程

public static void main(String[] args) {
 //method();
 // method2();
 //method3();
}

public static void method(){
 File file = new File("b");
 File file1 = new File("D:\\QQ\\1916247350");
 File file2 = new File("e.txt");
 String[] files = file1.list();
 for (int i=0;i<files.length;i++){
  System.out.println(files[i]);
 }
}
public static void method2(){
 File file = new File("b");
 File file1 = new File("D:\\QQ\\1916247350");
 File file2 = new File("e.txt");

 File[] files = file1.listFiles();
 for (File file3 : files) {
  System.out.println(file3.getName());
 }
}
public static void method3(){
 File[] files = File.listRoots();
 for (File file : files) {
  System.out.println(file);
 }
}

運(yùn)行結(jié)果

method()

method2()

method(3)

練習(xí)

1、輸出指定目錄下的所有java文件

public static void main(String[] args) {
 File file = new File("D:\\IDEA\\IDEAprogram");
 method(file);
}
public static void method(File file){
//判斷文件是夠是目錄文件
 if (file.isDirectory()){
  File[] files = file.listFiles();
  for (File file1 : files) {
  //判斷是否為文件
   if (file1.isFile()){
   //判斷文件是否是以.java結(jié)尾的文件
    if (file1.getName().endsWith(".java")){
     System.out.println(file1.getName());
    }
   }else if (file1.isDirectory()){ 
   //回調(diào),遍歷file1
    method(file1);
   }
  }
 }
}

運(yùn)行結(jié)果

2、刪除指定的目錄(包括子目錄)

public static void main(String[] args) {
 File file = new File("D:\\a");
 method(file);
}
//刪除指定目錄下的文件
public static void method(File file){
 //刪除自己所有的子文件和子目錄
 //獲取子文件和子目錄
 if (file.isDirectory()){
  File[] files = file.listFiles();
  for (File file1 : files) {
   if (file1.isFile()){
    System.out.println(file1.getName());
    //干掉它
    file1.delete();
   }else if (file1.isDirectory()){
    //繼續(xù)查看
    method(file1);
   }
  }
  //干掉自己
  System.out.println(file.getName());
  file.delete();
 }
}

代碼運(yùn)行結(jié)果

本文介紹了java開(kāi)發(fā)過(guò)程中File類(lèi)的詳細(xì)使用方法,更多關(guān)于File類(lèi)使用方法請(qǐng)查看下面的相關(guān)鏈接

相關(guān)文章

  • struts2實(shí)現(xiàn)簡(jiǎn)單文件下載功能

    struts2實(shí)現(xiàn)簡(jiǎn)單文件下載功能

    這篇文章主要為大家詳細(xì)介紹了struts2實(shí)現(xiàn)簡(jiǎn)單文件下載功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • 詳細(xì)分析java并發(fā)之volatile關(guān)鍵字

    詳細(xì)分析java并發(fā)之volatile關(guān)鍵字

    這篇文章主要介紹了java并發(fā)之volatile關(guān)鍵字的的相關(guān)資料,文中代碼非常詳細(xì),幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • Java中的JVM虛擬機(jī)內(nèi)存分配詳解

    Java中的JVM虛擬機(jī)內(nèi)存分配詳解

    這篇文章主要介紹了Java中的JVM虛擬機(jī)內(nèi)存分配詳解,虛擬機(jī)是一種能夠執(zhí)行 Java 字節(jié)碼的虛擬機(jī),它是 Java 語(yǔ)言的核心組成部分,負(fù)責(zé)將 Java 代碼轉(zhuǎn)換為機(jī)器碼并執(zhí)行,JVM 提供了內(nèi)存管理、垃圾回收、線程管理等功能,需要的朋友可以參考下
    2023-10-10
  • SpringBoot動(dòng)態(tài)更新yml文件

    SpringBoot動(dòng)態(tài)更新yml文件

    在系統(tǒng)運(yùn)行過(guò)程中,可能由于一些配置項(xiàng)的簡(jiǎn)單變動(dòng)需要重新打包啟停項(xiàng)目,這對(duì)于在運(yùn)行中的項(xiàng)目會(huì)造成數(shù)據(jù)丟失,客戶(hù)操作無(wú)響應(yīng)等情況發(fā)生,針對(duì)這類(lèi)情況對(duì)開(kāi)發(fā)框架進(jìn)行升級(jí)提供yml文件實(shí)時(shí)修改更新功能,這篇文章主要介紹了SpringBoot動(dòng)態(tài)更新yml文件
    2023-01-01
  • java如何獲取map中value的最大值

    java如何獲取map中value的最大值

    這篇文章主要介紹了java如何獲取map中value的最大值問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • SpringBoot之控制器的返回值處理方式

    SpringBoot之控制器的返回值處理方式

    這篇文章主要介紹了SpringBoot之控制器的返回值處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • SpringCloud中的OpenFeign調(diào)用解讀

    SpringCloud中的OpenFeign調(diào)用解讀

    OpenFeign是一個(gè)顯示聲明式的WebService客戶(hù)端,使用OpenFeign能讓編寫(xiě)Web Service客戶(hù)端更加簡(jiǎn)單OpenFeign的設(shè)計(jì)宗旨式簡(jiǎn)化Java Http客戶(hù)端的開(kāi)發(fā),本文給大家介紹SpringCloud之OpenFeign調(diào)用解讀,感興趣的朋友一起看看吧
    2023-11-11
  • Java中回調(diào)函數(shù)?(callback)?及其實(shí)際應(yīng)用場(chǎng)景

    Java中回調(diào)函數(shù)?(callback)?及其實(shí)際應(yīng)用場(chǎng)景

    在Java中回調(diào)函數(shù)(Callback)是一種常見(jiàn)的設(shè)計(jì)模式,用于實(shí)現(xiàn)異步操作或事件處理,這篇文章主要給大家介紹了關(guān)于Java中回調(diào)函數(shù)?(callback)?及其實(shí)際應(yīng)用場(chǎng)景的相關(guān)資料,需要的朋友可以參考下
    2024-02-02
  • java多線程開(kāi)發(fā)之通過(guò)對(duì)戰(zhàn)游戲?qū)W習(xí)CyclicBarrier

    java多線程開(kāi)發(fā)之通過(guò)對(duì)戰(zhàn)游戲?qū)W習(xí)CyclicBarrier

    這篇文章給大家分享了關(guān)于java多線程開(kāi)發(fā)中通過(guò)對(duì)戰(zhàn)游戲?qū)W習(xí)CyclicBarrier的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友們學(xué)習(xí)參考下。
    2018-08-08
  • 詳解Android中的Toast源碼

    詳解Android中的Toast源碼

    這篇文章主要介紹了詳解Android中的Toast源碼,Toast使用Java語(yǔ)言實(shí)現(xiàn),需要的朋友可以參考下
    2015-07-07

最新評(píng)論

静宁县| 双辽市| 噶尔县| 闵行区| 武邑县| 岗巴县| 崇左市| 彭阳县| 宜兴市| 公主岭市| 五大连池市| 布拖县| 扎囊县| 东安县| 泌阳县| 丹阳市| 东乡族自治县| 颍上县| 平定县| 龙井市| 建阳市| 左云县| 遵义县| 永康市| 嘉峪关市| 金沙县| 珲春市| 罗平县| 抚松县| 龙门县| 镇江市| 怀集县| 茌平县| 洪泽县| 岳普湖县| 湟中县| 富裕县| 舞钢市| 丘北县| 临漳县| 德庆县|