为什么会出现错误,将夜COPY2复制错误。
package project3_8_4filedemo_copy;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class CopyDemo {
public static void main(String[] args) throws FileNotFoundException {
// 不使用缓冲流的方式复制文件
FileInputStream fis = null;
FileOutputStream fos = null;
FileOutputStream fos1 = null;
try {
fis = new FileInputStream("将夜.txt");
fos = new FileOutputStream("将夜copy.txt");
long start01 = System.currentTimeMillis();
int n = 0;
while ((n = fis.read()) != -1) {
fos.write(n);
}
fos.close();
long end01 = System.currentTimeMillis();
System.out.println("非缓冲流方式复制文件用时:" + (end01 - start01));
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 使用缓冲流的方式复制文件
BufferedInputStream bis = new BufferedInputStream(new FileInputStream("将夜.txt"));
BufferedOutputStream bos = new BufferedOutputStream(fos1);
long start02 = System.currentTimeMillis();
try {
fos1 = new FileOutputStream("将夜copy2.txt");
int i = 0;
byte[] b = new byte[1024];
while ((i = bis.read(b)) != -1) {
bos.write(b, 0, i);
bos.flush();
}
fos1.close();
fis.close();
bos.close();
bis.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
long end02 = System.currentTimeMillis();
System.out.println("非缓冲流方式复制文件用时:" + (end02 - start02));
}
}
正在回答 回答被采纳积分+1
- 参与学习 人
- 提交作业 7317 份
- 解答问题 14452 个
想要入门学编程?多年一直活跃在编程语言排行版前列的Java是一个很好的选择。本路径将从Java基础语法、面向对象、常用工具类三部分,为你开启软件开发的大门!
了解课程

恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星