Android 如何强制转换器不序列化基元类型数据?
我将改型与SimpleXMLConverter结合使用,但有一件事我无法通过注释解决,即: 当我序列化具有双成员的类时,它被包装在Android 如何强制转换器不序列化基元类型数据?,android,xml,retrofit,simple-framework,Android,Xml,Retrofit,Simple Framework,我将改型与SimpleXMLConverter结合使用,但有一件事我无法通过注释解决,即: 当我序列化具有双成员的类时,它被包装在标记中,我想要它: @Root(name = "WrappedDouble", strict = false) public class WrappedDouble { @Element(name = "theRealDoubleField") double classField; } 序列化这样的类会 <WrappedDouble>
标记中,我想要它:
@Root(name = "WrappedDouble", strict = false)
public class WrappedDouble {
@Element(name = "theRealDoubleField")
double classField;
}
序列化这样的类会
<WrappedDouble>
<theRealDoubleField>
<double>3.0</double>
</theRealDoubleField>
</WrappedDouble>
3
有没有办法让这些标签消失?您使用的是哪个版本的Simple?使用2.7.1和此代码:
Serializer serializer = new Persister();
WrappedDouble wd = new WrappedDouble(27.23);
serializer.write(wd, System.out); // Write to stdout
我得到以下(正确)结果:
您是否使用任何自定义变压器、转换器或策略
<WrappedDouble>
<theRealDoubleField>27.23</theRealDoubleField>
</WrappedDouble>
@Root(name = "WrappedDouble", strict = false)
public class WrappedDouble
{
@Element(name = "theRealDoubleField")
double classField;
public WrappedDouble(double d)
{
this.classField = d;
}
WrappedDouble()
{
this(0.0);
}
public double getClassField()
{
return classField;
}
}