java如何拷贝文件到另一个目录下

java如何拷贝文件到另一个目录下,第1张

/**

*

复制单个文件

*

@param

oldPath

String

原文件路径

如:c:/fqf.txt

*

@param

newPath

String

复制后路径

如:f:/fqf.txt

*

@return

boolean

*/

public

void

copyFile(String

oldPath,

String

newPath)

{

try

{

int

bytesum

=

0

int

byteread

=

0

File

oldfile

=

new

File(oldPath)

if

(oldfile.exists())

{

//文件存在时

InputStream

inStream

=

new

FileInputStream(oldPath)

//读入原文件

FileOutputStream

fs

=

new

FileOutputStream(newPath)

byte[]

buffer

=

new

byte[1444]

int

length

while

(

(byteread

=

inStream.read(buffer))

!=

-1)

{

bytesum

+=

byteread

//字节数

文件大小

System.out.println(bytesum)

fs.write(buffer,

0,

byteread)

}

inStream.close()

}

}

catch

(Exception

e)

{

System.out.println("复制单个文件 *** 作出错")

e.printStackTrace()

}

}

/**

*

复制整个文件夹内容

*

@param

oldPath

String

原文件路径

如:c:/fqf

*

@param

newPath

String

复制后路径

如:f:/fqf/ff

*

@return

boolean

*/

public

void

copyFolder(String

oldPath,

String

newPath)

{

try

{

(new

File(newPath)).mkdirs()

//如果文件夹不存在

则建裤庆立新铅耐文槐纯春件夹

File

a=new

File(oldPath)

String[]

file=a.list()

File

temp=null

for

(int

i

=

0

i

<

file.length

i++)

{

if(oldPath.endsWith(File.separator)){

temp=new

File(oldPath+file[i])

}

else{

temp=new

File(oldPath+File.separator+file[i])

}

if(temp.isFile()){

FileInputStream

input

=

new

FileInputStream(temp)

FileOutputStream

output

=

new

FileOutputStream(newPath

+

"/"

+

(temp.getName()).toString())

byte[]

b

=

new

byte[1024

*

5]

int

len

while

(

(len

=

input.read(b))

!=

-1)

{

output.write(b,

0,

len)

}

output.flush()

output.close()

input.close()

}

if(temp.isDirectory()){//如果是子文件夹

copyFolder(oldPath+"/"+file[i],newPath+"/"+file[i])

}

}

}

catch

(Exception

e)

{

System.out.println("复制整个文件夹内容 *** 作出错")

e.printStackTrace()

}

}

借助工闷裂穗具包commons-io.jar

import java.io.File

import java.io.IOException

import org.apache.commons.io.FileUtils

public class Admin {

public static void main(String[] args) {

File from = new File("d:/源举a")

File to = new File("d:/蚂卜b")

try {

FileUtils.copyDirectory(from, to)

} catch (IOException e) {

e.printStackTrace()

}

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8177078.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存