XStream解析

来源:互联网 发布:音乐调音器软件 编辑:程序博客网 时间:2024/05/22 10:49

首先需要两个jar包,在eclipse项目根目录下新建lib文件夹,把jar包放进去,再选中jar包,右键build path-->config......即可。

现有user.xml文件,

<?xml version="1.0" encoding="UTF-8"?><userprofile><users><user><name>jack</name><mail>jack@hotmail.com</mail><age>22</age></user><user><name> allen </name><mail> allen@163.com </mail><age>21</age></user></users></userprofile> 

用XStream解析过程如下:

(1.)实体类:

package xstream;public class User{          private String name;     private String mail;     private int age;public String getName() {return name;}public void setName(String name) {this.name = name;}public String getMail() {return mail;}public void setMail(String mail) {this.mail = mail;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}     } 
(2.)文件类:

package xstream;import java.util.ArrayList;import java.util.List;public class UserProfile{     private List users=new ArrayList();     public void setUsers(List users){         this.users=users;     }     public List getUsers(){         return users;     }     public void addUser(User user){         users.add(user);     } } 

(3.)操作类:

package xstream;import java.io.FileNotFoundException;import java.io.FileReader;import java.util.List;import com.thoughtworks.xstream.XStream;import com.thoughtworks.xstream.io.xml.DomDriver;public class XStreamTest { public static void main(String[] args) throws FileNotFoundException {    XStream stream = new XStream(new DomDriver());    stream.alias("userprofile", UserProfile.class);    stream.alias("user", User.class);    UserProfile profile = (UserProfile) stream.fromXML(new FileReader(      "user.xml"));     List users = profile.getUsers();    for (int i = 0; i < users.size(); ++i) {     User user = (User) users.get(i);     System.out.println(user.getName());     System.out.println(user.getAge());    } } } 

运行输出结果如下:

jack
22
allen
21