我想使用@PATH来保持我的元素顺序,但是,有一些可选元素(required = false),当它们的值为NULL时我无法隐藏这些元素。
@Order(elements={"Name", "Nickname"})
public class InfosType
{
@Element
@Path("Name")
private String name;
@Element(required=false)
@Path("Nickname")
private String nickname;
}
即使nickname = NULL,xml文件也总是有昵称字段:
<Name>David</Name>
<Nickname/>
但我想要这个:
<Name>David</Name>
我的目标是序列化xml文件并保持命令我的可选元素。
对我有任何建议(适用于Android的内容,如simpleframework可以帮助我,等等)?感谢。
答案 0 :(得分:2)
我的解决方案是不要使用路径。 我只使用Order注释。
@Order(elements={"Name", "Nickname"})
public class InfosType
{
@Element(required = true, name = "Name")
private String name;
@Element(required = false, name = "Nickname")
private String nickname;
}
因为现在simpleframework不会序列化NULL可选元素。