Java:对XML进行序列化/反序列化,而不是二进制
我有一组复杂的数据模型,目前实现了Java:对XML进行序列化/反序列化,而不是二进制,java,serialization,xml-serialization,Java,Serialization,Xml Serialization,我有一组复杂的数据模型,目前实现了java.io.Serializable,我已经成功地使用ObjectOutputStream和ObjectInputStream对它们进行了序列化和反序列化 但是,结果是二进制文件(正如预期的那样),我想知道Java是否支持以与非二进制格式(如XML)相同的方式进行序列化和反序列化 我看到C#具有以下特性: 在这种情况下,性能速度/效率不是一个考虑因素。是的,Java有它,它被称为XML编码。看看 该方法与普通的序列化非常相似。此外,我建议您查看和框架。我发
java.io.Serializable
,我已经成功地使用ObjectOutputStream
和ObjectInputStream
对它们进行了序列化和反序列化
但是,结果是二进制文件(正如预期的那样),我想知道Java是否支持以与非二进制格式(如XML)相同的方式进行序列化和反序列化
我看到C#具有以下特性:
在这种情况下,性能速度/效率不是一个考虑因素。是的,Java有它,它被称为XML编码。看看
该方法与普通的序列化非常相似。此外,我建议您查看和框架。我发现两者都很好。您可以选择使用其中一种,也可以按照Jack的建议使用XmlEncoder。我也选择了XStream。简单的说,如果XStream的性能比XStream好得多,最坏的情况下,它的速度会快2倍。此外,对于非常大的对象图,简单的Java对象序列化优于简单的Java对象序列化。