java將一個(gè)目錄下的所有文件復(fù)制n次
本文實(shí)例為大家分享了java將一個(gè)目錄下的所有文件復(fù)制n次的具體代碼,供大家參考,具體內(nèi)容如下
1. 文件復(fù)制示意圖

2.java程序
(1).調(diào)用
final static String SOURCESTRING = "/Users/amarao/360/download/test/";
final static String OUTPUTSTRING = "/Users/amarao/360/download/test4/";
public static void main(String[] args) throws IOException {
// 將SOURCESTRING下的文件復(fù)制3次到OUTPUTSTRING目錄下
LCopyFileUtils.copyFile(SOURCESTRING, OUTPUTSTRING, 3);
}
(2).java工具類(lèi)
/**
*
* 參考:
* Java將一個(gè)目錄下的所有數(shù)據(jù)復(fù)制到另一個(gè)目錄下:http://m.fzitv.net/article/167726.htm
* Java復(fù)制文件的4種方式:http://m.fzitv.net/article/70412.htm
* */
public class LCopyFileUtils {
/**
* 復(fù)制srcPath路徑下的文件到destPath目錄下
*
* @param srcPath 源文件路徑
* @param destPath 輸出路徑
* @param count 每個(gè)文件的復(fù)制次數(shù)
* @return 是否復(fù)制成功
*/
public static boolean copyFile(String srcPath, String destPath, int count) throws IOException {
File fileSrc = new File(srcPath);
File[] files = fileSrc.listFiles();
if (files == null) {
System.out.println("Error:源文件夾下沒(méi)有文件");
return false;
}
for (int i = 0; i < files.length; i++) {
if (files[i].isFile()) {
File file = null;
String fileName = files[i].getName();
String filePrefix = fileName.substring(0, fileName.lastIndexOf("."));
String fileSuffix = fileName.substring(fileName.lastIndexOf("."));
// 每個(gè)文件復(fù)制Count次
for (int j = 0; j < count; j++) {
file = new File(destPath + File.separator + filePrefix + "_" + i + "_" + j + fileSuffix);// 創(chuàng)建文件
copyFileUsingFileChannels(files[i], file);
}
}
}
return true;
}
/**
* 復(fù)制文件srcFile到destFile
*
* @param srcFile 源文件
* @param destFile 目的文件
*/
public static void copyFileUsingFileChannels(File srcFile, File destFile) throws IOException {
FileChannel inputChannel = null;
FileChannel outputChannel = null;
try {
inputChannel = new FileInputStream(srcFile).getChannel();
outputChannel = new FileOutputStream(destFile).getChannel();
outputChannel.transferFrom(inputChannel, 0, inputChannel.size());
System.out.println("復(fù)制文件成功:" + srcFile.getName() + " -> " + destFile.getName());
} catch (Exception e) {
System.out.println("Error:復(fù)制文件失?。? + srcFile.getName() + " -> " + destFile.getName());
} finally {
if (inputChannel != null) {
inputChannel.close();
}
if (outputChannel != null) {
outputChannel.close();
}
}
}
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- java簡(jiǎn)單實(shí)現(xiàn)復(fù)制 粘貼 剪切功能代碼分享
- java實(shí)現(xiàn)文本復(fù)制功能
- Java 添加、修改、讀取、復(fù)制、刪除Excel批注的實(shí)現(xiàn)
- Java實(shí)現(xiàn)inputstream流的復(fù)制代碼實(shí)例
- 利用Java實(shí)現(xiàn)復(fù)制Excel工作表功能
- Java 圖片復(fù)制功能實(shí)現(xiàn)過(guò)程解析
- Java對(duì)象的復(fù)制三種方式(小結(jié))
- java遞歸實(shí)現(xiàn)復(fù)制一個(gè)文件夾下所有文件功能
- java將一個(gè)目錄下的所有數(shù)據(jù)復(fù)制到另一個(gè)目錄下
- Java加速讀取復(fù)制超大文件
- 詳解Java中IO字節(jié)流基本操作(復(fù)制文件)并測(cè)試性能
- Java 訪問(wèn)剪切板(復(fù)制,粘貼)的示例
相關(guān)文章
java web SpringMVC后端傳json數(shù)據(jù)到前端頁(yè)面實(shí)例代碼
本篇文章主要介紹了java web SpringMVC后端傳json數(shù)據(jù)到前端頁(yè)面實(shí)例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-03-03
Java中短路運(yùn)算符與邏輯運(yùn)算符示例詳解
這篇文章主要給大家介紹了關(guān)于Java中短路運(yùn)算符與邏輯運(yùn)算符的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01
ApplicationListenerDetector監(jiān)聽(tīng)器判斷demo
這篇文章主要為大家介紹了ApplicationListenerDetector監(jiān)聽(tīng)器判斷demo,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03
Java Web開(kāi)發(fā)入門(mén)書(shū)籍實(shí)例解析(總結(jié)一)
從事Java Web開(kāi)發(fā)這一段時(shí)間來(lái),對(duì)Java 面向?qū)ο蟮乃枷牒蚆VC開(kāi)發(fā)模式可以說(shuō)已經(jīng)熟悉了。我當(dāng)前參與的項(xiàng)目使用的框架是Spring、SpringMVC、Hibernate。下面腳本之家小編給大家整理一篇教程幫助大家學(xué)習(xí)javaweb相關(guān)知識(shí),感興趣的朋友可以參考下2016-03-03
使用Jackson進(jìn)行JSON生成與解析的新手指南
這篇文章主要為大家詳細(xì)介紹了如何使用Jackson進(jìn)行JSON生成與解析處理,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-04-04

