1、概述
json 解析可以使用gson包解为现成的对象,那么xml可以不可以用现成的包解析成java的对象呢?
带着这个问题,查询了一些材料找到了Xstream解析方法,确实可以完成这种思考,只是实际使用中并没有感觉到特别好用就是了,可能是xml比较复杂的原因,也可能是自身水平不足够,至少使用了记录下。
2、xstream介绍
xstream使用还是相对方便的。可以参考官网:http://xstream.codehaus.org/
如上图所示,xstream 的代码索引和简单使用都已经在官网右侧列出。其中简单的xml解析为javabean 实例只要参考Two Minute Tutorial 一列就可以了:
使用比较简单。
3、第三方包选择
下载了官网的包后,会发现其中相关包有很多。只要添加xstream-[version].jar
,xpp3-[version].jar
这两个包即可。xpp3这个包也可以不包含,不过不包含在实例化xStream对象时要多添加一些代码。偷懒点就包含进去了,其中我用的是:xstream-1.4.7.jarxpp3_min-1.1.4c.jar。另外几个标准包什么的,没有细读文档不知道怎么用。
4、注意点
note:在实际使用时遇到过提示 没有提供默认够着函数的执行错误
解决:1、写一个转换类 继承
Converter
话说:我试了下,可以。只是这么麻烦还不如自己解析了。
2、升级jdk到最新版本
3、其中调用执行
fromXML方法时。传进去的类不能用内部类,用内部类还是会有这个错误提示。
5、嵌套xml解析
xml如果多层的话不能只用一个类搞定
mXstream2.addImplicitArray(Names.class,"names");
mXstream2.addImplicitCollection(Names.class,"names","name",String.class);//嵌套并排子节点
原文链接:https://www.f2er.com/xml/298573.html