オブジェクトをObjectOutputStream(FileOutputStream(File))
でシリアル化し、類似の。で逆シリアル化しますInputStreams
。これらのシリアル化されたファイルの内部を(できればEclipseで)調べる方法はありますか?必要なすべての属性が書き込まれたかどうかを確認できますか?
編集:グーグル検索は否定的だった
オブジェクトをObjectOutputStream(FileOutputStream(File))
でシリアル化し、類似の。で逆シリアル化しますInputStreams
。これらのシリアル化されたファイルの内部を(できればEclipseで)調べる方法はありますか?必要なすべての属性が書き込まれたかどうかを確認できますか?
編集:グーグル検索は否定的だった
いくつかのテストを作成します (Eclipse の組み込み JUnit サポートを使用)。
これらのファイルの「内部を調べる」唯一の方法ObjectInputStream(FileInputStream(File))
は、バイトコードの達人で 16 進エディタを使用しない限り、 を使用することです。実際にテストを行っている場合は、「内部を調べる」必要はありません。
これは本格的なエディターではありませんが、Eamonn McManus は、シリアル化された blob を人間が読める形式に解読するトランスコーダーを作成しました。 http://weblogs.java.net/blog/2007/06/12/disassembly-serialized-java-objects
バイナリの互換性とパフォーマンスが考慮される場合は、Serializable ではなく Externalizable を検討するのに適した時期です。
これは「自立した」回答ではなく、OrangeDog の回答を拡張したものです。
"(Eclipse の組み込み JUnit サポートを使用して) いくつかのテストを作成します。"
シリアル化をテストする場合は、次のことを行うテストを記述します。
ファイルをロードしてオブジェクトをデシリアライズするクラスを作成します。次に、Eclipse のデバッグ ビューを使用して、(ブレークポイントを設定して) オブジェクトを参照します。