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

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

java文件復(fù)制的代碼,java文件復(fù)制的代碼有哪些

JAVA高手請(qǐng)進(jìn)!求一個(gè)JAVA程序:將一個(gè)文件中的內(nèi)容復(fù)制到另一個(gè)文件中。

最簡(jiǎn)單的io流問(wèn)題,不用什么高手,

創(chuàng)新互聯(lián)公司技術(shù)團(tuán)隊(duì)10多年來(lái)致力于為客戶提供成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、品牌網(wǎng)站制作、成都全網(wǎng)營(yíng)銷(xiāo)、搜索引擎SEO優(yōu)化等服務(wù)。經(jīng)過(guò)多年發(fā)展,公司擁有經(jīng)驗(yàn)豐富的技術(shù)團(tuán)隊(duì),先后服務(wù)、推廣了成百上千家網(wǎng)站,包括各類(lèi)中小企業(yè)、企事單位、高校等機(jī)構(gòu)單位。

我給你寫(xiě)個(gè)方法,參數(shù)是2個(gè)字符串,第一個(gè)寫(xiě)原文件的全路徑,第二個(gè)寫(xiě)目標(biāo)文件的全路進(jìn)。 你試試吧

public void copy(String fromFilePath, String toFilePath) {

try {

FileInputStream fis = new FileInputStream(fromFilePath);

FileOutputStream fos = new FileOutputStream(toFilePath);

byte[] b = new byte[100];

try {

while (fis.read(b) != (-1)) {

fos.write(b);

}

if (fis != null) {

fis.close();

fis = null;

}

if (fos != null) {

fos.flush();

fos.close();

fos = null;

}

} catch (IOException e) {

System.out.println("io異常");

}

} catch (FileNotFoundException e) {

System.out.println("源文件不存在");

}

public static void main(String[] args) {

//自己把路徑補(bǔ)齊,別忘了!?。。。。。。。。。。。。。?!

String fromFilePath=" "; // 源文件的全路徑。 比方"d://myphoto//nihao.mp3"

String toFilePath=" "; //目標(biāo)文件的全路勁。 如果不存在會(huì)自動(dòng)建立,如存在則在文件尾繼續(xù)添加

new CopyTest().copy(fromFilePath, toFilePath);

}

}

怎樣用java程序?qū)崿F(xiàn)文件拷貝

通過(guò)輸入輸出流解決此問(wèn)題,具體的可以查看JDK的API,實(shí)在不會(huì)的話,百度一下應(yīng)該都有一堆這方面的代碼。

Java 將一個(gè)文件復(fù)制到另一處

test.copy("G:\\G盤(pán)寄存資料\\我的文檔1\\音樂(lè)課堂.doc","G:\\G盤(pán)寄存資料");

請(qǐng)注意上面的有個(gè)文件夾名字叫“G盤(pán)寄存資料”,你復(fù)制的文件后的新文件名也叫“G盤(pán)寄存資料”,這樣名字重復(fù)了,所以就出錯(cuò)了。

可以把程序改成這樣的話就行了:

import java.io.BufferedInputStream;

import java.io.BufferedOutputStream;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.InputStream;

import java.io.OutputStream;

public class FileCopy {

public void copy(String src, String dest){//**********

InputStream is=null;

OutputStream os=null;

char ch[]=src.toCharArray();

//************新添加的代碼**********

int pos=0;

for(int i=ch.length-1;i=0;i--)

{

if(ch[i]=='\\')

{

if(ipos)

pos=i;

}

}

String temp=src.substring(pos);

dest=dest+temp;

System.out.println("dest="+dest);

//****************************************

try {

is=new BufferedInputStream(new FileInputStream(src));

os=new BufferedOutputStream(new FileOutputStream(dest));

byte[] b=new byte[256];

int len=0;

String str=null;

StringBuilder sb=new StringBuilder();

try {

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

os.write(b,0,len);

}

os.flush();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}finally{

if(is!=null){

try {

is.close();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

} catch (FileNotFoundException e) {

e.printStackTrace();

}finally{

if(os!=null){

try {

os.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

}

public static void main(String[] args) {

FileCopy test=new FileCopy();

test.copy("G:\\G盤(pán)寄存資料\\我的文檔1\\hello.txt","G:\\G盤(pán)寄存資料");//++++++++++++++++++++++

}

}

Java代碼拷貝文件夾 注:復(fù)制文件夾

Java代碼復(fù)制文件夾時(shí),則需要利用Flie類(lèi)在目標(biāo)文件夾中創(chuàng)建相應(yīng)的目錄,并且使用遞歸方法,代碼如下:

import?java.io.*;??

/**?

*?復(fù)制文件夾或文件夾?

*/??

public?class?CopyDirectory?{??

//?源文件夾???

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

//?目標(biāo)文件夾???

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

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

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

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

//?獲取源文件夾當(dāng)前下的文件或目錄???

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

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

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

//?復(fù)制文件???

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

}??

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

//?復(fù)制目錄???

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

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

copyDirectiory(sourceDir,?targetDir);??

}??

}??

}??

//?復(fù)制文件???

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

throws?IOException{??

//?新建文件輸入流并對(duì)它進(jìn)行緩沖???

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

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

//?新建文件輸出流并對(duì)它進(jìn)行緩沖???

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

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

//?緩沖數(shù)組???

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

int?len;??

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

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

}??

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

outBuff.flush();??

//關(guān)閉流???

inBuff.close();??

outBuff.close();??

output.close();??

input.close();??

}??

//?復(fù)制文件夾???

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

throws?IOException?{??

//?新建目標(biāo)目錄???

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

//?獲取源文件夾當(dāng)前下的文件或目錄???

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

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

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

//?源文件???

File?sourceFile=file[i];??

//?目標(biāo)文件???

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

copyFile(sourceFile,targetFile);??

}??

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

//?準(zhǔn)備復(fù)制的源文件夾???

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

//?準(zhǔn)備復(fù)制的目標(biāo)文件夾???

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

copyDirectiory(dir1,?dir2);??

}??

}??

}??

}

java文件復(fù)制粘貼

復(fù)制粘貼實(shí)際上是文件的流讀取和寫(xiě)入可以通過(guò)如下方法實(shí)現(xiàn):

讀寫(xiě)是兩個(gè)不同的分支,通常都是分開(kāi)單獨(dú)使用的。

可以通過(guò)BufferedReader 流的形式進(jìn)行流緩存,之后通過(guò)readLine方法獲取到緩存的內(nèi)容。

BufferedReader bre = null;

try {

String file = "D:/test/test.txt";

bre = new BufferedReader(new FileReader(file));//此時(shí)獲取到的bre就是整個(gè)文件的緩存流

while ((str = bre.readLine())!= null) // 判斷最后一行不存在,為空結(jié)束循環(huán)

{

System.out.println(str);//原樣輸出讀到的內(nèi)容

};

備注: 流用完之后必須close掉,如上面的就應(yīng)該是:bre.close(),否則bre流會(huì)一直存在,直到程序運(yùn)行結(jié)束。

可以通過(guò)“FileOutputStream”創(chuàng)建文件實(shí)例,之后過(guò)“OutputStreamWriter”流的形式進(jìn)行存儲(chǔ),舉例:

OutputStreamWriter pw = null;//定義一個(gè)流

pw = new OutputStreamWriter(new FileOutputStream(“D:/test.txt”),"GBK");//確認(rèn)流的輸出文件和編碼格式,此過(guò)程創(chuàng)建了“test.txt”實(shí)例

pw.write("我是要寫(xiě)入到記事本文件的內(nèi)容");//將要寫(xiě)入文件的內(nèi)容,可以多次write

pw.close();//關(guān)閉流

備注:文件流用完之后必須及時(shí)通過(guò)close方法關(guān)閉,否則會(huì)一直處于打開(kāi)狀態(tài),直至程序停止,增加系統(tǒng)負(fù)擔(dān)。

使用Java語(yǔ)言如何實(shí)現(xiàn)快速文件復(fù)制

使用Java語(yǔ)言如何實(shí)現(xiàn)快速文件復(fù)制:

代碼:

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);//連接兩個(gè)通道,從in通道讀取數(shù)據(jù)寫(xiě)入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”文件夾復(fù)制到“to”文件需要" + (end - start) + "毫秒。");

}

}


分享文章:java文件復(fù)制的代碼,java文件復(fù)制的代碼有哪些
轉(zhuǎn)載注明:http://weahome.cn/article/hdichj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部