Java 如何使用XStream为简单地图生成较小的输出?
我使用xstream序列化应用程序的数据。因为它应该被其他应用程序读取,甚至可以手动查看,所以我想修改一下XML 我有非常简单类型的大地图,如Java 如何使用XStream为简单地图生成较小的输出?,java,map,xstream,Java,Map,Xstream,我使用xstream序列化应用程序的数据。因为它应该被其他应用程序读取,甚至可以手动查看,所以我想修改一下XML 我有非常简单类型的大地图,如TreeMap和TreeMap。我想让我的输出更加紧凑。发自: <entry> <int>56</int> <double>38.0</double> </entry> XStream中有一个TreeMapConverter 也许它能帮到你。 您可以进一步了解这一点。
TreeMap
和TreeMap
。我想让我的输出更加紧凑。发自:
<entry>
<int>56</int>
<double>38.0</double>
</entry>
XStream中有一个TreeMapConverter
也许它能帮到你。
您可以进一步了解这一点。这个:CustomConverter可以帮助您。也许您应该修复空指针?假设我应该。但是怎么做呢?我想我不应该使用Entry.class
——但我看不出哪个是合适的类。嗯,不幸的是,这似乎是我能找到的解决方案。
java.lang.NullPointerException
at com.thoughtworks.xstream.converters.reflection.FieldDictionary.buildMap(FieldDictionary.java:128)
at com.thoughtworks.xstream.converters.reflection.FieldDictionary.fieldOrNull(FieldDictionary.java:113)
at com.thoughtworks.xstream.converters.reflection.FieldDictionary.field(FieldDictionary.java:92)
at com.thoughtworks.xstream.converters.reflection.PureJavaReflectionProvider.getField(PureJavaReflectionProvider.java:181)
at com.thoughtworks.xstream.mapper.AttributeMapper.addAttributeFor(AttributeMapper.java:169)
at com.thoughtworks.xstream.XStream.useAttributeFor(XStream.java:1226)
at com.thoughtworks.xstream.XStream.aliasAttribute(XStream.java:1192)
at myproject.XstreamSerializer.<init>(XstreamSerializer.java:43)