真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網站制作重慶分公司

java代碼怎么復制文件,java中文件復制

怎樣用java程序實現(xiàn)文件拷貝

通過輸入輸出流解決此問題,具體的可以查看JDK的API,實在不會的話,百度一下應該都有一堆這方面的代碼。

創(chuàng)新互聯(lián)成立于2013年,是專業(yè)互聯(lián)網技術服務公司,擁有項目網站設計、網站建設網站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元九龍坡做網站,已為上家服務,為九龍坡各地企業(yè)和個人服務,聯(lián)系電話:18980820575

使用Java語言如何實現(xiàn)快速文件復制

使用Java語言如何實現(xiàn)快速文件復制:

代碼:

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

import java.nio.channels.FileChannel;

public class Test {

public static void main(String[] args){

long start = System.currentTimeMillis();

FileInputStream fileInputStream = null;

FileOutputStream fileOutputStream = null;

FileChannel inFileChannel = null;

FileChannel outFileChannel = null;

try {

fileInputStream = new FileInputStream(new File("C:\\from\\不是鬧著玩的.flv"));

fileOutputStream = new FileOutputStream(new File("C:\\to\\不是鬧著玩的.flv"));

inFileChannel = fileInputStream.getChannel();

outFileChannel = fileOutputStream.getChannel();

inFileChannel.transferTo(0, inFileChannel.size(), outFileChannel);//連接兩個通道,從in通道讀取數據寫入out通道。

} catch (IOException e) {

e.printStackTrace();

} finally {

try {

if(fileInputStream != null){

fileInputStream.close();

}

if(inFileChannel != null){

inFileChannel.close();

}

if(fileOutputStream != null){

fileOutputStream.close();

}

if(outFileChannel != null){

outFileChannel.close();

}

} catch (IOException e) {

e.printStackTrace();

}

}

long end = System.currentTimeMillis();

System.out.println("視頻文件從“from”文件夾復制到“to”文件需要" + (end - start) + "毫秒。");

}

}

Java怎么實現(xiàn)文件拷貝

工具/原料

一臺配置了java環(huán)境的電腦

一款適合自己的開發(fā)集成環(huán)境,這里用的是eclipse Kepler

文件拷貝DEMO

1.首先,理清思路,然后我們再動手操作。

拷貝,有源文件,和目的文件。

如果原文件不存在,提示,報錯。

如果目的文件不存在,創(chuàng)建空文件并被覆蓋。

如果目的地址,也即目的路徑不存在,創(chuàng)建路徑。

拷貝,輸入流,輸出流,關閉流。

拷貝前輸出文件大小,計算拷貝大小,比較并核實。輸出。

2.首先呢,先判斷傳參是否完整。

如果不夠兩個參數,或者多于兩個參數,提示錯誤。

如果目標文件不存在,創(chuàng)建 空文件繼續(xù)復制。

3.在開始前,輸出被拷貝的源文件的大小。

4.獲得文件名稱,即短名。也即路徑下的文件全名(包括文件擴展名)。

5.拷貝的關鍵,這里用的簡單的緩沖流。從源文件到目的文件。

number of bytes copied 即是對拷貝長度的累計,直到拷貝完成,輸出。

6.將步驟二中的判斷并拷貝文件的代碼寫在一個main函數中,

執(zhí)行拷貝,拷貝完成。結果拷貝大小和源文件大小一致,成功。

7.在執(zhí)行前,記得輸入參數。

如果是使用命令提示符,執(zhí)行 javac CopyFile.java 之后,

執(zhí)行 java CopyFile [源文件長名] [目的文件長名]

如果是使用的eclipse,在運行前設置一下運行參數,完成后點擊運行,如下圖。

P.S. 這里面的所謂“長名”是指完整絕對路徑+文件名+文件類型擴展名

這里的源文件及目的文件的名稱分別為:

E:/IP_Data.rar 和 D:/testFiles/IP_Data.rar

END

Java代碼拷貝文件夾 注:復制文件夾

Java代碼復制文件夾時,則需要利用Flie類在目標文件夾中創(chuàng)建相應的目錄,并且使用遞歸方法,代碼如下:

import?java.io.*;??

/**?

*?復制文件夾或文件夾?

*/??

public?class?CopyDirectory?{??

//?源文件夾???

static?String?url1?=?"F:/photos";??

//?目標文件夾???

static?String?url2?=?"D:/tempPhotos";??

public?static?void?main(String?args[])?throws?IOException?{??

//?創(chuàng)建目標文件夾???

(new?File(url2)).mkdirs();??

//?獲取源文件夾當前下的文件或目錄???

File[]?file?=?(new?File(url1)).listFiles();??

for?(int?i?=?0;?i??file.length;?i++)?{??

if?(file[i].isFile())?{??

//?復制文件???

copyFile(file[i],new?File(url2+file[i].getName()));??

}??

if?(file[i].isDirectory())?{??

//?復制目錄???

String?sourceDir=url1+File.separator+file[i].getName();??

String?targetDir=url2+File.separator+file[i].getName();??

copyDirectiory(sourceDir,?targetDir);??

}??

}??

}??

//?復制文件???

public?static?void?copyFile(File?sourceFile,File?targetFile)???

throws?IOException{??

//?新建文件輸入流并對它進行緩沖???

FileInputStream?input?=?new?FileInputStream(sourceFile);??

BufferedInputStream?inBuff=new?BufferedInputStream(input);??

//?新建文件輸出流并對它進行緩沖???

FileOutputStream?output?=?new?FileOutputStream(targetFile);??

BufferedOutputStream?outBuff=new?BufferedOutputStream(output);??

//?緩沖數組???

byte[]?b?=?new?byte[1024?*?5];??

int?len;??

while?((len?=inBuff.read(b))?!=?-1)?{??

outBuff.write(b,?0,?len);??

}??

//?刷新此緩沖的輸出流???

outBuff.flush();??

//關閉流???

inBuff.close();??

outBuff.close();??

output.close();??

input.close();??

}??

//?復制文件夾???

public?static?void?copyDirectiory(String?sourceDir,?String?targetDir)??

throws?IOException?{??

//?新建目標目錄???

(new?File(targetDir)).mkdirs();??

//?獲取源文件夾當前下的文件或目錄???

File[]?file?=?(new?File(sourceDir)).listFiles();??

for?(int?i?=?0;?i??file.length;?i++)?{??

if?(file[i].isFile())?{??

//?源文件???

File?sourceFile=file[i];??

//?目標文件???

File?targetFile=new?File(new?File(targetDir).getAbsolutePath()+File.separator+file[i].getName());??

copyFile(sourceFile,targetFile);??

}??

if?(file[i].isDirectory())?{??

//?準備復制的源文件夾???

String?dir1=sourceDir?+?"/"?+?file[i].getName();??

//?準備復制的目標文件夾???

String?dir2=targetDir?+?"/"+?file[i].getName();??

copyDirectiory(dir1,?dir2);??

}??

}??

}??

}


當前標題:java代碼怎么復制文件,java中文件復制
文章來源:http://weahome.cn/article/dscgcjp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部