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

java中實(shí)現(xiàn)創(chuàng)建目錄與創(chuàng)建文件的操作實(shí)例

 更新時(shí)間:2023年01月18日 09:56:21   作者:禺垣  
用Java創(chuàng)建文件或目錄非常簡(jiǎn)單,下面這篇文章主要給大家介紹了關(guān)于java中實(shí)現(xiàn)創(chuàng)建目錄與創(chuàng)建文件的操作實(shí)例,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下

一、創(chuàng)建目錄

mkdir()——僅創(chuàng)建一層目錄,返回true或false.

mkdirs()——創(chuàng)建一層或多層目錄,返回true或false.

也就是,在通常情況下,使用mkdirs()即可滿足創(chuàng)建目錄的需求。

如,

File file = new File("D:\\myLevel1\\myLevel2"); //以某路徑實(shí)例化一個(gè)File對(duì)象
if (!file.exists()){ //如果不存在
    boolean dr = file.mkdirs(); //創(chuàng)建目錄
} 

即在D盤根目錄下創(chuàng)建了myLevel1、myLevel2兩層目錄。

二、創(chuàng)建文件

createNewFile()——當(dāng)File對(duì)象實(shí)例化的路徑中,上面各層目錄均已存在,最后一層目錄不存在時(shí),以最后一層目錄名為名稱創(chuàng)建文件。返回true或false.

如,

File file = new File("D:\\myLevel1\\myLevel2\\abc.txt"); //實(shí)例化File對(duì)象
try {
    boolean fr = file.createNewFile(); //創(chuàng)建文件
}catch (Exception e){
    e.printStackTrace();
}

即在D:\myLevel1\myLevel2下創(chuàng)建了一個(gè)abc.txt文件。

三、同時(shí)創(chuàng)建目錄和文件

getParent()——得到路徑的父級(jí)及以上的目錄,String類型。

getParentFile()——得到路徑的父級(jí)及以上的目錄實(shí)例化的File對(duì)象。

先使用getParentFile().mkdirs()創(chuàng)建目錄,再使用createNewFile()創(chuàng)建文件,如,

File file = new File("D:\\myLevel1\\myLevel2\\abc.txt"); //實(shí)例化File對(duì)象
boolean dr = file.getParentFile().mkdirs(); //創(chuàng)建目錄
try {
    boolean fr = file.createNewFile(); //創(chuàng)建文件
}catch (Exception e){
    e.printStackTrace();
}

即在D盤下創(chuàng)建了myLevel1、myLevel2兩層目錄和abc.txt文件。

補(bǔ)充知識(shí):getParentFile()方法和getParent()的區(qū)別

getParentFile()方法返回的是File類型的值,而getParent()返回的是字符串類型的值,根據(jù)你想獲得的值來區(qū)別使用,而exists()方法和mkdirs()方法是getParentFile()返回的File類型里面的方法,exists()方法是查看有沒有此路徑或者文件,mkdirs()方法是若沒有此路徑用來創(chuàng)建的

//若是有重名文件就會(huì)加后綴
String newfilename=filename;
int i=1;
if(descFile.exists()){
    newfilename=name+"("+i+")"+suffix;
    String parentPath=descFile.getParent();
    descFile=new File(parentPath+File.separator+newfilename);
    i++;
}
//判斷目錄是否存在
if(!descFile.getParentFile().exists()){
    //如果目標(biāo)文件所在目錄不存在,則創(chuàng)建父目錄
    descFile.getParentFile().mkdirs();
}

mkdir與mkdirs的區(qū)別

項(xiàng)目中需要在代碼中讀取或創(chuàng)建文件保存路徑,用到了mkdir,查看還有個(gè)mkdirs方法,這里記錄一下兩者的區(qū)別。

1、關(guān)于兩者的說明如下:

  •  boolean mkdir() :  創(chuàng)建此抽象路徑名指定的目錄。  
  •  boolean mkdirs() :  創(chuàng)建此抽象路徑名指定的目錄,包括創(chuàng)建必需但不存在的父目錄。  

2、結(jié)合自己的理解及具體實(shí)踐如下:

mkdir():只能創(chuàng)建一層目錄, 如:

File file = new File("e:/test");
file.mkdir();

這樣會(huì)在e:/路徑下創(chuàng)建test目錄.

mkdirs(): 創(chuàng)建多層目錄,如:

File file = new File("e:/test/0930");
file.mkdirs();

這樣才能在e:/test/路徑下創(chuàng)建0930目錄,mkdir這里就不生效了。

總結(jié)

到此這篇關(guān)于java中實(shí)現(xiàn)創(chuàng)建目錄與創(chuàng)建文件操作的文章就介紹到這了,更多相關(guān)java創(chuàng)建目錄與創(chuàng)建文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java中重寫和重載的區(qū)別及說明

    Java中重寫和重載的區(qū)別及說明

    Java語(yǔ)言中的重載和重寫是實(shí)現(xiàn)多態(tài)的兩種方式,但他們的實(shí)現(xiàn)方式和規(guī)則有所不同,重載發(fā)生在一個(gè)類中,同名的方法如果有不同的參數(shù)列表,則視為重載,重寫則發(fā)生在子類和父類之間,要求子類重寫方法和父類被重寫方法有相同的返回類型
    2024-10-10
  • SpringBoot自動(dòng)配置實(shí)現(xiàn)的詳細(xì)步驟

    SpringBoot自動(dòng)配置實(shí)現(xiàn)的詳細(xì)步驟

    這篇文章主要為大家介紹了SpringBoot自動(dòng)配置實(shí)現(xiàn)詳細(xì)的過程步驟,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • Java對(duì)文件進(jìn)行基本操作案例講解

    Java對(duì)文件進(jìn)行基本操作案例講解

    這篇文章主要介紹了Java對(duì)文件進(jìn)行基本操作案例講解,本篇文章通過簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是本文的詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • Java 全面系統(tǒng)介紹反射的運(yùn)用

    Java 全面系統(tǒng)介紹反射的運(yùn)用

    準(zhǔn)備入手學(xué)習(xí)java的安全了,感覺這也是一個(gè)大的趨勢(shì),想著盡早進(jìn)入到j(luò)ava安全的探索中,在反序列化鏈的學(xué)習(xí)之前,需要先學(xué)習(xí)反射,不多說了,開干吧
    2022-03-03
  • 淺談JVM之類的加載鏈接和初始化

    淺談JVM之類的加載鏈接和初始化

    有了java class文件之后,為了讓class文件轉(zhuǎn)換成為JVM可以真正運(yùn)行的結(jié)構(gòu),需要經(jīng)歷加載,鏈接和初始化的過程。這三個(gè)過程是怎么工作的呢?在本文中你將會(huì)找到答案。
    2021-06-06
  • java讀取JSON文件的多種實(shí)現(xiàn)方式

    java讀取JSON文件的多種實(shí)現(xiàn)方式

    這篇文章主要介紹了java讀取JSON文件的多種實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • java中常用的阻塞隊(duì)列與非阻塞隊(duì)列詳解

    java中常用的阻塞隊(duì)列與非阻塞隊(duì)列詳解

    這篇文章主要介紹了java中常用的阻塞隊(duì)列與非阻塞隊(duì)列用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • SpringBoot調(diào)用外部接口的幾種方式

    SpringBoot調(diào)用外部接口的幾種方式

    SpringBoot應(yīng)用中,調(diào)用外部接口是微服務(wù)架構(gòu)常見需求,本文主要介紹了SpringBoot調(diào)用外部接口的幾種方式,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-10-10
  • Spring Boot Starter 自動(dòng)裝配原理全解析

    Spring Boot Starter 自動(dòng)裝配原理全解析

    Spring Boot Starter 的核心設(shè)計(jì)理念是 約定優(yōu)于配置,其核心實(shí)現(xiàn)基于 自動(dòng)配置(Auto-Configuration) 和 條件化注冊(cè)(Conditional Registration),這篇文章主要介紹了Spring Boot Starter 自動(dòng)裝配原理全解析,需要的朋友可以參考下
    2025-04-04
  • 一文詳解Spring?AOP的配置與使用

    一文詳解Spring?AOP的配置與使用

    面向切面編程(俗稱AOP)提供了一種面向?qū)ο缶幊?俗稱OOP)的補(bǔ)充,面向?qū)ο缶幊套詈诵牡膯卧穷?class),然而面向切面編程最核心的單元是切面(Aspects)。本文就來和大家聊聊AOP的配置與使用,感興趣的可以了解一下
    2022-11-11

最新評(píng)論

顺平县| 临沧市| 大化| 宜宾县| 陆良县| 新兴县| 罗定市| 大冶市| 安新县| 临漳县| 安顺市| 祁门县| 临潭县| 米林县| 延津县| 麦盖提县| 清徐县| 原阳县| 玛曲县| 杭锦后旗| 旬阳县| 泰宁县| 岳池县| 子长县| 雷州市| 沧源| 西峡县| 芒康县| 房山区| 临沭县| 古丈县| 绵阳市| 东兰县| 盐亭县| 日喀则市| 通渭县| 文安县| 兴山县| 文登市| 溧阳市| 河津市|