关于fos.write(b,0,n)中n的疑惑

关于fos.write(b,0,n)中n的疑惑

n在while循环中是一个一个的去读取判断的嘛?以及为什么write(b,0,n)为什么最后要写上n?

有个小疑问:我们可以不看用List来存储字节呢。这样就可以不用去定义字节数组的大小了?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,在write(b,0,n)方法中,b是写入的字节数组,0是数组中的起始偏移量,n是一次要写入的字节数,在这里不能使用List存储字节,因为在write方法中参数类型分别定义为byte[],int,int类型。如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~ 


  • Levinson 提问者 #1
    n=fis.read()不是一个字节一个字节的去判断是否等于-1,为什么能当作一次要写入的字节数呢。这不是矛盾了嘛?
    2019-03-21 17:08:19
  • 吃吃吃鱼的猫 回复 提问者 Levinson #2
    read()方法返回值是每次读入的字节总数,如果因为已经到达文件末尾而没有更多的数据,则返回 -1,并不是判断每个字节是否等于-1。如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
    2019-03-21 17:28:26
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师