亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

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

File類簡介

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

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

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

1、構(gòu)造方法

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

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

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

代碼實現(xiàn)過程

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

 }

運行結(jié)果

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

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

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

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

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

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

代碼實現(xiàn)過程

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());
}

運行結(jié)果

3、File類的判斷功能

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

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

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

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

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

代碼實現(xiàn)過程

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)前路徑是否為絕對路徑
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());
}

運行結(jié)果

method()

method2()

method3()

method4()

4、File類的獲取功能和修改名字功能

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

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

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

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

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

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

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

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

代碼實現(xiàn)過程:

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對象返回的形式返回當(dāng)前File對象所指向的絕對路徑
 System.out.println(file1.getAbsoluteFile());
 //返回File對象所指向的絕對路徑
 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));
}

運行結(jié)果

method()

method2()

method3()

method4()

5、File 類的其他獲取功能

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

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

Static File[] listRoots() 獲取計算機中的所有盤符

代碼實現(xiàn)過程

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);
 }
}

運行結(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);
   }
  }
 }
}

運行結(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();
 }
}

代碼運行結(jié)果

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

相關(guān)文章

  • Spring Boot利用Lombok減少Java中樣板代碼的方法示例

    Spring Boot利用Lombok減少Java中樣板代碼的方法示例

    spring Boot是非常高效的開發(fā)框架,lombok是一套代碼模板解決方案,將極大提升開發(fā)的效率,下面這篇文章主要給大家介紹了關(guān)于Spring Boot利用Lombok減少Java中樣板代碼的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-09-09
  • JDK基于CAS實現(xiàn)原子類盤點解析

    JDK基于CAS實現(xiàn)原子類盤點解析

    這篇文章主要為大家介紹了JDK基于CAS實現(xiàn)原子類盤點解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12
  • JAVA Vector源碼解析和示例代碼

    JAVA Vector源碼解析和示例代碼

    本文的學(xué)習(xí)方式是先對JAVA Vector有個整體認(rèn)識,然后再學(xué)習(xí)它的源碼,最后再通過實例來學(xué)會使用。
    2013-11-11
  • java支付寶即時到帳提交訂單功能

    java支付寶即時到帳提交訂單功能

    這篇文章主要為大家詳細(xì)介紹了java支付寶即時到帳提交訂單功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • java中數(shù)組的相關(guān)知識小結(jié)(推薦)

    java中數(shù)組的相關(guān)知識小結(jié)(推薦)

    下面小編就為大家?guī)硪黄猨ava中數(shù)組的相關(guān)知識小結(jié)(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-07-07
  • RabbitMQ中的channel信道、exchange交換機和queue隊列詳解

    RabbitMQ中的channel信道、exchange交換機和queue隊列詳解

    這篇文章主要介紹了RabbitMQ中的channel信道、exchange交換機和queue隊列詳解,connection是指物理的連接,一個client與一個server之間有一個連接,一個連接上可以建立多個channel,可以理解為邏輯上的連接,需要的朋友可以參考下
    2023-08-08
  • 一文詳解Spring?security框架的使用

    一文詳解Spring?security框架的使用

    Spring?Security是一個基于Spring框架的安全認(rèn)證和授權(quán)框架,它提供了一套全面的安全解決方案,可以在Web應(yīng)用、移動應(yīng)用和Web服務(wù)等不同場景下使用。本文就來詳細(xì)聊聊它的使用吧
    2023-03-03
  • Java讀取.properties配置文件的幾種方式

    Java讀取.properties配置文件的幾種方式

    這篇文章主要介紹了Java讀取.properties配置文件的幾種方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • 記一次Feign中實現(xiàn)傳實體Bean的問題

    記一次Feign中實現(xiàn)傳實體Bean的問題

    這篇文章主要介紹了記一次Feign中如何傳實體Bean的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • springboot如何實現(xiàn)異步響應(yīng)請求(前端請求超時的問題解決)

    springboot如何實現(xiàn)異步響應(yīng)請求(前端請求超時的問題解決)

    這篇文章主要給大家介紹了關(guān)于springboot如何實現(xiàn)異步響應(yīng)請求(前端請求超時的問題解決)的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用springboot具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2023-01-01

最新評論