>>前スレ982
なるほど。
DataInputを使った場合、返り値などでストリームの終端を認識できないのですね。

それにしても
while (true) {
 try {
  byte b = in.readByte();
 } catch (EOFException ignore) {
  break;
 }
 sha.update(b);
 md5.update(b);
}
のほうが綺麗だと思うんですが、どうなんでしょ?
ループを例外で抜けるのは違和感があるのですが
結構使われてるもんなんでしょうか?