当前位置 : 主页 > 编程语言 > c++ >

Java中复制文件的两种方式

来源:互联网 收集:自由互联 发布时间:2021-07-03
复制文件代码的两种方式 package IOProj;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;public class CopyPicDemo {publ
复制文件代码的两种方式
package IOProj;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;


public class CopyPicDemo {


public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
copyPic();
//
copyPic2();
}

private static void copyPic() throws IOException {
// TODO Auto-generated method stub
/**
* 复制一个图片 1、既有读也有写FileInputStream和FileOutputStream 2、还是非文本数据
* 使用到了字节流中用于操作文件的对象
*/
//1、被复制的源文件
FileInputStream fis = new FileInputStream("temp\\net.doc");
//2、复制之后产生的新的文件
FileOutputStream fos = new FileOutputStream("temp\\aa.doc");
// 3、自定义缓冲区对象
byte[] buf = new byte[1024];
int by = 0;
while ((by = fis.read(buf)) != -1) {
fos.write(buf, 0, by);
}
fos.close();
fos.close();
}


public static void copyPic2() throws IOException {

FileInputStream fis = new FileInputStream("temp\\net.doc");
FileOutputStream fos = new FileOutputStream("temp\\aa.doc");
BufferedInputStream bis=new BufferedInputStream(fis);
BufferedOutputStream bos=new BufferedOutputStream(fos);
int by=0;
byte[] buf=new byte[1024];
while((by=bis.read(buf))!=-1)
{
bos.write(buf,0,by);
}
fis.close();
fos.close();
bis.close();
bos.close();
}
}
网友评论