【JAVA UI】【HarmonyOS】【Demo】 鸿蒙如何进行xml解析
【鸿蒙】鸿蒙如何进行数据解析
【问题描述】有时候我们从服务器获取是xml格式数据,我们需要将xml转化成model对象,该如何使用呢?下面举个例子说明一下,将分以下几步进行
1. 准备条件 创建xml文件,创建model对象,构建界面
2. 数据进行解析操作(重点)
3. 运行效果
第一步准备条件 创建xml文件,创建model对象,构建界面
1.1在rawfile 新建xml文件,代码如下
1.2新建class model代码如下
1.3新建数据的abilityslice,xml如下
界面效果如下
第二步数据解析
2.1参考资料如下
SAXParser
https://developer.harmonyos.com/cn/docs/documentation/doc-references/saxparser-0000001060039145
XMLReader
https://developer.harmonyos.com/cn/docs/documentation/doc-references/xmlreader-0000001060837300
该功能和Android的demo相似可以参考Android的demo链接
https://blog.csdn.net/bzlj2912009596/article/details/80262191
在上述四个接口中,最重要的就是ContentHandler这个接口,下面是对这个接口方法的说明:
//设置一个可以定位文档内容事件发生位置的定位器对象
public void setDocumentLocator(Locator locator)
//用于处理文档解析开始事件
public void startDocument()throws SAXException
//处理元素开始事件,从参数中可以获得元素所在名称空间的uri,元素名称,属性类表等信息
public void startElement(String namespacesURI , String localName , String qName , Attributes atts) throws SAXException
//处理元素结束事件,从参数中可以获得元素所在名称空间的uri,元素名称等信息
public void endElement(String namespacesURI , String localName , String qName) throws SAXException
//处理元素的字符内容,从参数中可以获得内容
public void characters(char[] ch , int start , int length) throws SAXException
新建SaxHelper代码如下
AbilitySlice代码如下
第三步运行效果如下