大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java復制文件都有哪幾種方式

Java復制文件都有哪幾種方式

更新時間:2019-08-29 09:57:06 來源:動力節(jié)點 瀏覽2654次

  


盡管Java提供了一個可以處理文件的IO操作類。 但是沒有一個復制文件的方法。 復制文件是一個重要的操作,當你的程序必須處理很多文件相關的時候。 然而有幾種方法可以進行Java文件復制操作,下面動力節(jié)點java學院小編為大家分享Java復制文件都有哪幾種方式呢?



1、使用Commons IO復制 


Apache Commons IO提供拷貝文件方法在其FileUtils類,可用于復制一個文件到另一個地方。它非常方便使用Apache Commons FileUtils類時,您已經(jīng)使用您的項目。基本上,這個類使用Java NIO FileChannel內(nèi)部。 這是第三種方法的代碼: 


private static void copyFileUsingApacheCommonsIO(File source, File dest) 

        throws IOException { 

    FileUtils.copyFile(source, dest); 



2、使用FileStreams復制


這是最經(jīng)典的方式將一個文件的內(nèi)容復制到另一個文件中。 使用FileInputStream讀取文件A的字節(jié),使用FileOutputStream寫入到文件B。 這是第一個方法的代碼:


private static void copyFileUsingFileStreams(File source, File dest) 

        throws IOException {     

    InputStream input = null;     

    OutputStream output = null;     

    try { 

           input = new FileInputStream(source); 

           output = new FileOutputStream(dest);         

           byte[] buf = new byte[1024];         

           int bytesRead;         

           while ((bytesRead = input.read(buf)) > 0) { 

               output.write(buf, 0, bytesRead); 

           } 

    } finally { 

        input.close(); 

        output.close(); 

    } 


正如你所看到的我們執(zhí)行幾個讀和寫操作try的數(shù)據(jù),所以這應該是一個低效率的,下一個方法我們將看到新的方式。 



3、使用Java7的Files類復制 


如果你有一些經(jīng)驗在Java 7中你可能會知道,可以使用復制方法的Files類文件,從一個文件復制到另一個文件。 這是第四個方法的代碼: 


private static void copyFileUsingJava7Files(File source, File dest) 

        throws IOException {     

        Files.copy(source.toPath(), dest.toPath()); 

}



4、使用FileChannel復制 


Java NIO包括transferFrom方法,根據(jù)文檔應該比文件流復制的速度更快。 這是第二種方法的代碼: 


private static void copyFileUsingFileChannels(File source, File dest) throws IOException {     

        FileChannel inputChannel = null;     

        FileChannel outputChannel = null;     

    try { 

        inputChannel = new FileInputStream(source).getChannel(); 

        outputChannel = new FileOutputStream(dest).getChannel(); 

        outputChannel.transferFrom(inputChannel, 0, inputChannel.size()); 

    } finally { 

        inputChannel.close(); 

        outputChannel.close(); 

    } 


以上就是動力節(jié)點java學院小編分享的“Java復制文件都有哪幾種方式”的內(nèi)容,希望對大家有幫助,更多精彩內(nèi)容請繼續(xù)關注動力節(jié)點java學院官網(wǎng),每天會有精彩內(nèi)容分享與你。



相關免費視頻教程推薦


java文本文件復制視頻教程下載地址:http://www.dabaquan.cn/xiazai/2481.html



提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 伊人97| 色偷偷7777www | 亚洲第一成人在线 | 国产麻豆精品手机在线观看 | 国产ww久久久久久久久久 | 神马午夜不卡影院 | 荷兰毛片| 特级无码a级毛片特黄 | 免费看特级毛片 | 五月综合在线 | 在线欧洲成人免费视频 | 手机在线看片国产 | 特级黄色毛片视频 | 日本高清在线观看天码888 | 中文字幕在线观看 | 日日日干干干 | 亚洲国产一区二区三区 | 免费观看成人久久网免费观看 | 国产精品久久久久久久网站 | 四虎影音在线观看 | 中文精品久久久久国产网站 | 一级a毛片免费 | 亚洲午夜久久久久中文字幕久 | aaa一级最新毛片 | 99精品免费观看 | 欧美亚洲国产日韩综合在线播放 | 欧美精品在欧美一区二区 | 亚洲第一视频在线播放 | 久久桃花网 | 中文字幕久热精品视频免费 | 大学生一一级毛片在线播放 | 伊人久久大香线焦综合四虎 | 国产精品久久二区三区色裕 | 亚洲精品一区二区中文 | 神马影院伦理我不卡 | 国产在线精品成人一区二区三区 | 日本一级www乱码在线 | 久久国产加勒比精品无码 | 偷偷狠狠的日日2020 | 色妞ww精品视频7777 | 日本在线不卡免费 |