序列化问题java



我有几个3D对象被添加到TransformGroup。三维对象不作为变量存在,而是通过new Sphere()添加到TransformGroup中,而TransformGroup类不实现Serializable接口。那么,我应该如何能够序列化我的对象到一个文件,并在读取文件时访问我的对象?

注:我真的不知道如何序列化到XML文件,我不确定这是否是我需要的一个好选择。

不仅是TransformGroup,而且您的单个原语(如Sphere)也都缺少Serializable接口。因此,尽管您可以很容易地获得所有子节点的列表,但序列化该列表并不是一个很大的进步。对象看起来像Java bean,至少乍一看是这样。如果它们确实存在,那么您可以使用XMLEncoder来序列化它们。注意,以这种方式生成的XML可能包含很多任意的Java命令,因此从不受信任的源反序列化这样的文件可能存在安全隐患。我猜有第三方Bean编码器可以避免这个问题。但是XMLEncoder可能是一个合理的第一步,看看这是否有效,或者如果没有,它在哪里失败。

相关内容

  • 没有找到相关文章

最新更新