当前位置: 代码迷 >> J2SE >> 二进制源读入不完全
  详细解决方案

二进制源读入不完全

热度:41   发布时间:2016-04-24 00:38:50.0
二进制流读入不完全
处理TCP DUMP的时候

FileInputStream file = new FileInputStream(path1);
this.output = new BufferedWriter(new FileWriter(path2));
DataInputStream dis = new DataInputStream(file);

for (int t = 0; t < 4; t++) {
if ((c = dis.read()) != -1) {
result = intToByteArray(c, 1);
temp = temp + getHex(result);
i++;
} else
return (0);
}

总是提前就Return了 而且还每次都同一个位置停止
文件越大丢的越多

------解决方案--------------------
Java code
for (int t = 0; t < 4; t++) {if ((c = dis.read()) != -1) {result = intToByteArray(c, 1);temp = temp + getHex(result);i++;} elsereturn (0);}
------解决方案--------------------
Java code
for (int t = 0; t < 4; t++) {if ((c = dis.read()) != -1) {result = intToByteArray(c, 1);temp = temp + getHex(result);i++;} elsereturn (0);}
------解决方案--------------------
这也没办法看出来为什么返回-1啊
  相关解决方案