【初心者】Java質問・相談スレ23【大歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0431401
NGNGとりあえず今、テストさせてもらってます。
HexInputStreamクラスの、read()メソッドは、returnの部分が
return (
(( Character.digit((char)ch1, 16) & 0x0F) << 4) |
(( Character.digit((char)ch2, 16) & 0x0F) << 0)
);
こうなるかと思うのだが、いかがだろうか?
ch1を16進化した際に、4bitシフトさせて上位に移動し、
ch2をORで加算(論理和)ってことでしょ?
んで、これを実装して、テストコード部分も使わせていただいているのだけれど、
HexOutputStreamは、うまく動いてる。
この結果をHexInputStreamを使う側に食わせたときに、
ObjectInputStream in = new ObjectInputStream(new HexInputStream(bais));
の部分で、「InputStreamは、シリアライズされたオブジェクトを含んでないぞ(゚д゚)ゴルァ」
と、java.io.StreamCorruptedExceptionで怒られてしもうた。
今、ここを追っかけてるところ。
■ このスレッドは過去ログ倉庫に格納されています