如何使用 XStream 将对象列表转换为 XML 文档?
以及如何反序列化它?
这是我的xml
<?xml version="1.0" encoding="UTF-8"?>
<persons>
<person>
<fullname>Guilherme</fullname>
<age>10</age>
<address>address,address,address,address,</address>
</person>
<person>
<fullname>Guilherme</fullname>
<age>10</age>
<address>address,address,address,address,</address>
</person>
</persons>
Person bean 包含 3 个字段如何使用自定义转换器将其转换回 Bean List?
最佳答案
您不一定需要 CustomConverter。
你需要一个类来保存你的列表:
public class PersonList {
private List<Person> list;
public PersonList(){
list = new ArrayList<Person>();
}
public void add(Person p){
list.add(p);
}
}
将列表序列化为 XML:
XStream xstream = new XStream();
xstream.alias("person", Person.class);
xstream.alias("persons", PersonList.class);
xstream.addImplicitCollection(PersonList.class, "list");
PersonList list = new PersonList();
list.add(new Person("ABC",12,"address"));
list.add(new Person("XYZ",20,"address2"));
String xml = xstream.toXML(list);
将 xml 反序列化为人员对象列表:
String xml = "<persons><person>...</person></persons>";
PersonList pList = (PersonList)xstream.fromXML(xml);
关于java - 如何使用 XStream 将对象列表转换为 XML 文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4077071/