您的位置:首页 > 移动开发 > Android开发

android xstream 解析xml

2014-08-05 16:56 435 查看
第三方包:xstream-1.3.1.jar

1.序列号对象为xml

<span style="font-family:Arial;background-color: rgb(255, 255, 255);"> </span><pre class="html" name="code">XStream xStream = new XStream();
xStream.alias("person", Person.class);
xStream.alias("personnumber", PhoneNumber.class);

// Serializing an object to XML
Person joe = new Person("Joe", "Walnes");
joe.setPhone(new PhoneNumber(123, "1234-456"));
joe.setFax(new PhoneNumber(123, "9999-999"));
FileOutputStream fileOutputStream;
String path = "/mnt/sdcard/test.xml";

File f = new File(path);
if (!f.exists())
f.createNewFile();
fileOutputStream = new FileOutputStream(f);

xStream.toXML(joe, fileOutputStream);

// Deserializing an object back from XM
// XStream xStream2 = new XStream();
fileOutputStream.close();



2.反序列号xml为对象。注意用domdriver,并且alias、userAttributeFor,必须定义。不然报错。

XStream xStream2 = new XStream(new DomDriver());
xStream2.alias("person", Person.class);
xStream2.alias("personnumber", PhoneNumber.class);
xStream2.useAttributeFor(Person.class, "firstname");
xStream2.useAttributeFor(Person.class, "lastname");
xStream2.useAttributeFor(PhoneNumber.class, "code");
xStream2.useAttributeFor(PhoneNumber.class, "number");
FileInputStream fileInputStream = new FileInputStream(f);
Person person = (Person) xStream2.fromXML(fileInputStream);
String str = person.toString();

EditText t = (EditText) findViewById(R.id.editText1);

t.setText(str);
fileInputStream.close();



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: