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

Java實(shí)現(xiàn)復(fù)制文件并命名的超簡(jiǎn)潔寫法

 更新時(shí)間:2021年11月17日 09:54:21   作者:氫電公敵  
這篇文章主要介紹了Java實(shí)現(xiàn)復(fù)制文件并命名的超簡(jiǎn)潔寫法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

復(fù)制文件并命名的超簡(jiǎn)潔寫法

沒(méi)錯(cuò)又是我,這次為大家?guī)?lái)Java中 復(fù)制文件并命名的超簡(jiǎn)潔寫法(請(qǐng)確保你的jre在1.8+),這次用到了Files(始于1.7)和lambda 表達(dá)式(始于1.8),都是比較新的東西,同時(shí)還有一些振奮人心的特性(和愛)。

好了上代碼

DirectoryStream<Path> directoryStream;
File in = new File("C:\\Users\\simon\\Desktop\\a"); // 資源文件夾
File out = new File("C:\\Users\\simon\\Desktop\\b"); // 目標(biāo)文件夾
try {
       directoryStream = Files.newDirectoryStream(in.toPath()); //returning a DirectoryStream to iterate over* all entries in the directory.
       directoryStream.forEach(path -> {
           if (path.getFileName().toString().endsWith(".java")) { // 判斷是否為java文件
               try {
                   Files.copy(path, out.toPath().resolve(path.getFileName().toString().replace(".java", ".txt")), StandardCopyOption.REPLACE_EXISTING); // 重命名為.txt 并且復(fù)制到out文件夾
               } catch (IOException e) { // 因?yàn)樵趌ambda表達(dá)式內(nèi),所以要包裹try catch
                   e.printStackTrace();
               }
           }
       });
   } catch (IOException e) {
       e.printStackTrace();
   }

文件重命名拷貝一份新的文件

java文件重命名,并且保留老的文件,實(shí)際上就是拷貝一份新的文件,相當(dāng)于復(fù)制粘貼重命名。代碼如下:

傳參數(shù)說(shuō)明

老的文件地址,oneType和twoType還有count是我自己業(yè)務(wù)的東西也是文件的重命名名字,files集合是為了方便我把這批文件導(dǎo)出且壓縮,參見這篇文章

 //對(duì)圖片進(jìn)行重命名
    public String reNameImg(String oldPath, String oneType, String twoType, int count, List<File> files) {
        File source = new File(oldPath);
        String suffixName = source.getName().substring(source.getName().lastIndexOf("."));
        File filePath = new File(rootFileDir + File.separator + "exPort" + File.separator +generatorDataFileName());
        String reName = "";
        try {
            if (!filePath.exists()) {
                filePath.mkdirs();
            }
           File dest =new File(filePath+File.separator+oneType + "-" + twoType + "-" + count + suffixName);
            Files.copy(source.toPath(), dest.toPath(), StandardCopyOption.REPLACE_EXISTING);
            files.add(dest);
            reName = dest.getPath();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return reName;
    }
 //獲取日期目錄
    private String generatorDataFileName() {
        Calendar date = Calendar.getInstance();
        SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
        return format.format(date.getTime());
    }

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 一篇文章帶你入門java變量與類型

    一篇文章帶你入門java變量與類型

    這篇文章主要給大家介紹了關(guān)于Java基本知識(shí)點(diǎn)之變量和數(shù)據(jù)類型的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-08-08
  • java讀取文件內(nèi)容,解析Json格式數(shù)據(jù)方式

    java讀取文件內(nèi)容,解析Json格式數(shù)據(jù)方式

    這篇文章主要介紹了java讀取文件內(nèi)容,解析Json格式數(shù)據(jù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • idea打開運(yùn)行配置java?web項(xiàng)目的全過(guò)程

    idea打開運(yùn)行配置java?web項(xiàng)目的全過(guò)程

    這篇文章主要給大家介紹了關(guān)于idea打開運(yùn)行配置java?web項(xiàng)目的相關(guān)資料,有些時(shí)候我們用IDEA跑之前用eclipse中運(yùn)行的項(xiàng)目的時(shí)候,總是不止所措,要不就是只展示html,要不就是不能部署成功,需要的朋友可以參考下
    2023-08-08
  • 記一次集成swagger2(Knife4j)在線文檔提示:Knude4j文檔請(qǐng)求異常的解決辦法

    記一次集成swagger2(Knife4j)在線文檔提示:Knude4j文檔請(qǐng)求異常的解決辦法

    Knife4j是一個(gè)集Swagger2 和 OpenAPI3為一體的增強(qiáng)解決方案,下面這篇文章主要給大家介紹了關(guān)于一次集成swagger2(Knife4j)在線文檔提示:Knude4j文檔請(qǐng)求異常的解決辦法,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-02-02
  • Java Spring處理循環(huán)依賴詳解

    Java Spring處理循環(huán)依賴詳解

    這篇文章主要介紹了Java中的Spring如何處理循環(huán)依賴,依賴指的是Bean與Bean之間的依賴關(guān)系,關(guān)于更多Spring?處理循環(huán)依賴的詳情,需要的朋友可以參考下面文章具體內(nèi)容
    2023-04-04
  • 詳解java8中的Stream數(shù)據(jù)流

    詳解java8中的Stream數(shù)據(jù)流

    Stream使用一種類似用SQL語(yǔ)句從數(shù)據(jù)庫(kù)查詢數(shù)據(jù)的直觀方式來(lái)提供一種對(duì)Java集合運(yùn)算和表達(dá)的高階抽象。接下來(lái)通過(guò)本文給大家分享java8中的Stream數(shù)據(jù)流知識(shí),感興趣的朋友一起看看吧
    2017-10-10
  • Java 關(guān)鍵字 volatile 的理解與正確使用

    Java 關(guān)鍵字 volatile 的理解與正確使用

    本文主要介紹 volatile 的使用準(zhǔn)則,以及使用過(guò)程中需注意的地方,感興趣的朋友一起看看吧
    2017-06-06
  • java設(shè)計(jì)模式--三種工廠模式詳解

    java設(shè)計(jì)模式--三種工廠模式詳解

    這篇文章主要為大家詳細(xì)介紹了Java設(shè)計(jì)模式之工廠模式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能給你帶來(lái)幫助
    2021-07-07
  • Java多態(tài)用法與注意點(diǎn)實(shí)例分析

    Java多態(tài)用法與注意點(diǎn)實(shí)例分析

    這篇文章主要介紹了Java多態(tài)用法與注意點(diǎn),結(jié)合實(shí)例形式分析了java多態(tài)相關(guān)的向上轉(zhuǎn)型、向下轉(zhuǎn)型、隱藏等相關(guān)操作技巧,需要的朋友可以參考下
    2019-08-08
  • Java中分割字符串的兩種方法實(shí)例詳解

    Java中分割字符串的兩種方法實(shí)例詳解

    這篇文章主要介紹了Java中分割字符串的兩種方法,一種是java.lang.String 的 split() 方法,,另外一種是用String Tokenizer類。文中的每種方法都給出了詳細(xì)的示例代碼,相信對(duì)大家的理解和學(xué)習(xí)具有一定的參考借鑒價(jià)值,有需要的朋友們下面來(lái)一起看看吧。
    2016-12-12

最新評(píng)論