字节输入流提问
package com.zzh.file;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class FileOutputDemo2 {
public static void main(String[] args) {
//文件拷贝
try {
FileInputStream fis=new FileInputStream("happy.jpg");
FileOutputStream fos=new FileOutputStream("happycopy.jpg");
int n=0;
byte[] b=new byte[2048];
while((n=fis.read(b))!=-1) {
fos.write(b,0,n);
}
fis.close();
fos.close();
} catch (FileNotFoundException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
fos.write(b,0,n);中 n每次都会变化吧,比如数组byte里面有1,2,3个数字
第一次n=0
fos写入1
fos变成1
第二次n=1
fos写入b,0,1的范围,就是写入1 2
fos变成1 1 2
第三次n=2
fos写入b,0,2的范围,就是写入1 2 3
fos变成1 1 2 1 2 3
提问:是这样理解的吗?write是递增还是覆盖?
19
收起
正在回答 回答被采纳积分+1
2回答
2023版Java工程师
- 参与学习 人
- 提交作业 8788 份
- 解答问题 9886 个
综合就业常年第一,编程排行常年霸榜,北上广深月薪过万! 不需要基础,无需脱产即可学习,只要你有梦想,想高薪! 全新升级:技术栈升级(包含VUE3.0,ES6,Git)+项目升级(前后端联调与功能升级)
了解课程

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