不多说话,直接上代码
错误代码
public class IODemo05 {
public static void main(String[] args) throws IOException {
// 创建一个字节输入流管道与源文件接通
InputStream is = new FileInputStream("D:/file/aaa/111.png");
// 创建一个字节输出流管道
OutputStream os = new FileOutputStream("D:/file/bbb/111.png");
// 创建一个字节数组转移字节数据
byte[] buffer = new byte[1024];
int len;
while ((len = is.read()) != -1) {
os.write(buffer, 0, len);
}
os.close();
is.close();
System.out.println("复制完成");
}
}
正确代码
public class IODemo05 {
public static void main(String[] args) throws IOException {
// 创建一个字节输入流管道与源文件接通
InputStream is = new FileInputStream("D:/file/aaa/111.png");
// 创建一个字节输出流管道
OutputStream os = new FileOutputStream("D:/file/bbb/111.png");
// 创建一个字节数组转移字节数据
byte[] buffer = new byte[1024];
int len;
while ((len = is.read(buffer)) != -1) {
os.write(buffer, 0, len);
}
os.close();
is.close();
System.out.println("复制完成");
}
}
在while ((len = is.read()) != -1) {
os.write(buffer, 0, len);
}这段代码中,一定要把定义的字节流数组加入到参数中,不然复制出来的文件就无法打开了