这篇文章将为大家详细讲解有关怎么在android中使用XStream对xml进行解析,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
1,要解析的xml文件文件
xml="<apps>\n" +
" <app>\n" +
" <id>1</id>\n" +
" <name>burn</name>\n" +
" <version>1.0</version>\n" +
" <info>\n" +
" <size>10.5</size>\n" +
" <message>hhhhhhhh</message>\n" +
" </info>\n" +
" <info>\n" +
" <size>10.5</size>\n" +
" <message>hhhhhhhh</message>\n" +
" </info>\n" +
" </app>\n" +
" <app>\n" +
" <id>2</id>\n" +
" <name>burn2</name>\n" +
" <version>2.1</version>\n" +
" <info>\n" +
" <size>10.5</size>\n" +
" <message>hhhhhhhh</message>\n" +
" </info>\n" +
" <info>\n" +
" <size>10.5</size>\n" +
" <message>hhhhhhhh</message>\n" +
" </info>\n" +
" </app>\n" +
" <app>\n" +
" <id>3</id>\n" +
" <name>burn3</name>\n" +
" <version>3.2</version>\n" +
" <info>\n" +
" <size>10.5</size>\n" +
" <message>hhhhhhhh</message>\n" +
" </info>\n" +
" <info>\n" +
" <size>10.5</size>\n" +
" <message>hhhhhhhh</message>\n" +
" </info>\n" +
" </app>\n" +
"</apps>";
2,新建xml文件对应的封装类
/**
*
xml数据对应的封装类(注意实体类和xml数据的对应关系,所有标签都得对应)
*/
@XStreamAlias("apps")//配置标签别名
public class AppBean {
@XStreamImplicit//忽略集合根节点
private List<App> app_list;
//必须有无参构造方法
public AppBean() {
}
public AppBean(List<App> app_list) {
this.app_list = app_list;
}
public List<App> getApp_list() {
return app_list;
}
public void setApp_list(List<App> app_list) {
this.app_list = app_list;
}
@XStreamAlias("app")
public static class App{
private long id;
private String name;
private String version;
@XStreamImplicit
private List<Infor> infor_list;
public App() {
}
public App(long id, List<Infor> infor_list, String name, String version) {
this.id = id;
this.infor_list = infor_list;
this.name = name;
this.version = version;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public List<Infor> getInfor_list() {
return infor_list;
}
public void setInfor_list(List<Infor> infor_list) {
this.infor_list = infor_list;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getVersion() {
return version;
}
public void setVersion(String version) {
this.version = version;
}
@XStreamAlias("info")
public static class Infor{
private String message;
private double size;
public Infor() {
}
public Infor(String message, double size) {
this.message = message;
this.size = size;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public double getSize() {
return size;
}
public void setSize(double size) {
this.size = size;
}
}
}
}
3,开始xml解析
XStream xStream=new XStream();
xStream.processAnnotations(AppBean.class);//声明使用注解的类
AppBean ab2= (AppBean) xStream.fromXML(xml);//xml-->Bean,只能解析为对象,不能解析为集合
String xml=xStream.toXML(AppBean.class)//Bean-->xml
关于怎么在android中使用XStream对xml进行解析就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。