我正在使用ObjectOutputStream(FileOutputStream(File))
序列化我的对象,并使用类似的InputStreams
对它们进行反序列化。有没有办法查看这些序列化文件(最好是在eclipse中),所以我可以检查是否写了所有必要的属性?
编辑:谷歌搜索为否定
答案 0 :(得分:5)
编写一些测试(使用Eclipse的内置JUnit支持)。
“查看”这些文件的唯一方法是使用ObjectInputStream(FileInputStream(File))
,除非你是字节码大师并使用十六进制编辑器。如果您确实进行了一些测试,则无需“查看”任何内容。
答案 1 :(得分:4)
虽然这不是一个完整的编辑器,但Eamonn McManus已经编写了一个转码器,它将序列化的blob解密成人类可读的形式。 http://weblogs.java.net/blog/2007/06/12/disassembling-serialized-java-objects
如果考虑二进制兼容性和性能,那么现在是查看Externalizable而不是Serializable的好时机。
答案 2 :(得分:2)
这不是一个“独立”的答案,只是OrangeDog答案的扩展。
“编写一些测试(使用Eclipse内置的JUnit支持)。”
如果要测试序列化,请编写执行以下操作的测试:
答案 3 :(得分:1)
编写一个加载文件的类并反序列化该对象。然后使用Eclipse的调试视图浏览对象(通过设置断点)。