質問

私は.datファイルへの出力を持っていることを複数のオブジェクト(自分のクラスの用語)を読みたいが、私はいつもnullPointExceptionまたはてEOFExceptionを取得します。

ObjectInputStream inputStream = new ObjectInputStream(new FileInputStream(masterFile));
        Object o = null;
        while(( o = inputStream.readObject()) != null){
            Term t = (Term)o;
            System.out.println("I found a term");
        }
役に立ちましたか?

解決

Javadocを参照してください。 readObject()はEOFでヌルを返しません。それはあなたが他の終わりにヌルを書いた場合、それがnullを返すことができるEOFException.唯一の方法であり、それは必ずしも読み取りループを終了するための十分な理由ではありませんスローます。

要するに、あなたのコードが間違っています。

はNB 'O' の初期化は冗長である。

NBあなたはNullPointerException,がnullでない限りmasterFileを投げることができない投稿(2)コード。であるという重大なレポートまたは単に推測?

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top