日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java 用于xcopy复制_java调用copy复制子文件夹及文件到指定目录(非xcopy)

發(fā)布時(shí)間:2023/12/20 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 用于xcopy复制_java调用copy复制子文件夹及文件到指定目录(非xcopy) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

因?yàn)樽魉詿┮驗(yàn)闊┧钥鞓?..(為什么不先查一下有沒有現(xiàn)成的命令,后悔啊!!)

不知道有xcopy這個(gè)命令就自己想寫個(gè)復(fù)制子目錄和文件的功能。。。以下故事誕生了

是這樣的,昨天在學(xué)校弄的半成品,半成品弄完晚上就跟朋友打cf了。。。他是個(gè)會(huì)帶隊(duì)團(tuán)滅的牛逼人物!!

然后隔天早上去學(xué)校就拿半成品測試了一下,發(fā)現(xiàn)直接用copy只能復(fù)制文件啊,不能直接復(fù)制子目錄里的文件(目錄指的是文件夾,子目錄就是文件夾里面還有文件夾當(dāng)然也有可能是文件)。。。。。那怎么搞???糾結(jié)了一下,就開始把半成品稍微改了一下,似乎沒什么卵用。。

然后就在那聽歌,在想,在發(fā)呆。。(厲害了我的哥),那位團(tuán)滅的牛逼人物還時(shí)不時(shí)來跟我說話,就這樣一上午過去了。。。

然后就去吃飯了,反正一早上就想了一個(gè)大概的思路。

首先要知道:目錄里有n個(gè)文件,n個(gè)目錄;n個(gè)目錄里又有n個(gè)文件及n個(gè)目錄以此類推沒完沒了的(沒完沒了是假的夸張一點(diǎn)而已)

我是這樣想的:

1.判斷如果是文件直接復(fù)制到目標(biāo)目錄,如果是目錄就保存到集合,保存的同時(shí)在目標(biāo)目錄先創(chuàng)建好要復(fù)制的目錄

if(是目錄){

在目標(biāo)文件夾創(chuàng)建要復(fù)制的文件夾

路徑保存到集合

}esel{

執(zhí)行copy命令進(jìn)行賦值

}

2.剛剛也說了目錄里有可能有n個(gè)文件和n個(gè)子目錄很多種可能(自己想想)

那么我只要再加個(gè)循環(huán)遍歷這個(gè)集合里的目錄,再進(jìn)行一次判斷,如果是文件還是跟第一次一樣直接復(fù)制到目標(biāo)目錄

如果是目錄繼續(xù)保存到集合

大概這樣寫:

if(是目錄){

在目標(biāo)文件夾創(chuàng)建要復(fù)制的文件夾

路徑保存到集合

for(int i=0...){

if(是目錄){

在目標(biāo)文件夾創(chuàng)建要復(fù)制的文件夾

保存到集合

}else{

直接復(fù)制過去

}

}

}else{

執(zhí)行copy命令進(jìn)行賦值

}

大概思路就是這樣子。

貼上代碼:

1 packagecom.d9.util;2

3 importjava.io.BufferedReader;4 importjava.io.File;5 importjava.io.IOException;6 importjava.io.InputStreamReader;7 importjava.util.ArrayList;8 importjava.util.List;9

10 public classdosCopyTest {11

12 public static void main(String[] args) throwsIOException {13 String path="f:\\test1";14 String targetPath="f:\\copytest";15 File file1=newFile(path);16 File file2=newFile(targetPath);17 file2.mkdirs();18 String strname []=file1.list();19 Runtime run=Runtime.getRuntime();20 Process p=null;21 List lpath=new ArrayList();22 for(String fn:strname) {23 file2=new File(path+"\\"+fn);24 if(file2.isDirectory()) {25 new File(targetPath+"\\"+fn).mkdirs();26 lpath.add("\\"+fn+"\\");27 for(int i=0;i

這樣就可以連帶子目錄和文件一起復(fù)制了,測試過沒毛病的。

其實(shí)早上也寫的差不多,但是寫的有點(diǎn)亂,中午吃完飯回來在那改,改到上課還是沒改完。。

課上完還是在那改。。。改得超級煩,因?yàn)樗悸范级搪妨?#xff0c;都不知道自己在改什么代碼看起來實(shí)在有點(diǎn)亂(佩服自己寫的代碼)

總結(jié)

以上是生活随笔為你收集整理的java 用于xcopy复制_java调用copy复制子文件夹及文件到指定目录(非xcopy)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。