首先你定义了一个byte数组,第一次读,abc def,将读取的第一个字节存储在元素 b[0] 中,下一个存储在 b[1] 中,依次类推。那么数组中就是{a,b,c, ,d,e,f}
第二次读时,也是将读取的第一个字节存储在元素 b[0] 中,下一个存储在 b[1] 中,依次类推,也就是说第二次读入的abc覆盖了之前的数据的一部分,但是没有完全覆盖,
你可以测试一下,第一次读入9个字节,第二次读入5个字节,所以把a,b,c, , d都覆盖了。
第三次读入同理。
不知道你明白了没有。你应该把数组定义在for循环里头,这样每次循环就定义一个新的数组,就不会出现你的那种情况了。 |