当前位置: 首页 > wzjs >正文

做销售网站需要多少钱淘宝页面制作

做销售网站需要多少钱,淘宝页面制作,包装设计图,个人做网站 用什么语言从零开始开发纯血鸿蒙应用 〇、前言一、鸿蒙SDK中的 XML API1、ohos.xml2、ohos.convertxml 三、XML 解析实践1、源数据结构2、定义映射关系3、定义接收对象4、获取文章信息 四、总结 〇、前言 在前后端的数据传输方面,论格式化形式,JSON格式自然是首选…

从零开始开发纯血鸿蒙应用

  • 〇、前言
  • 一、鸿蒙SDK中的 XML API
    • 1、@ohos.xml
    • 2、@ohos.convertxml
  • 三、XML 解析实践
    • 1、源数据结构
    • 2、定义映射关系
    • 3、定义接收对象
    • 4、获取文章信息
  • 四、总结

〇、前言

在前后端的数据传输方面,论格式化形式,JSON格式自然是首选,然而,曾经风靡一时的XML格式,也并非全然退出舞台,至今仍然发挥着作用,比如,RSS订阅中。

对于,JSON 格式的数据,ArkTS 因为是拓展自 Typescript,也就是 Javascript 的缘故,处理起来自然没什么难度,倒是 XML 格式的处理起来比较难,不过,鸿蒙SDK 对 XML 格式的数据,并不是全然不支持,提供了相应的 API,下面就给大家介绍一下。

一、鸿蒙SDK中的 XML API

在鸿蒙SDK中,可用于 XML 文档处理的 API,主要有两个:

  • @ohos.xml:XML 解析与生成
  • @ohos.convertxml:XML 转换 Javascript

1、@ohos.xml

在该模块,共包含一下几个与XML文档相关的对象:

  • XmlSerializer:用于生成 XML 文档
  • XmlPullParser:用于解析 XML 文档
  • ParseOptions:XML 解析选项
  • ParseInfo:XML 解析信息
  • EventType:XML 标签事件类型

其中用于 XML 解析的接口,自然就是 XmlPullParser 接口,具体而言,就是XmlPullParser.parseXml(option: ParseOptions): void 方法,而 ParseOptions 由如下成员组成:
在这里插入图片描述XML 文档中的数据,并不会由 parseXml 方法返回,而是在 ParseOptions 中传入的三个回调函数中获取:
作为关键的 tagValueCallbackFunction,可用于解析 XML 标签,返回 true 表示向下一层解析,返回 false 表示不再继续解析,可用于读取标签名称,特别的,如标签内的文本不会通过 value 返回,而是当作标签名为空的标签进行解析,以 CSDN 的 RSS 订阅返回的 XML 文档为例,利用该方法解析出来的信息如下:
在这里插入图片描述所以,很鸡肋,想要用这个方法去获取 XML 格式封装的数据,需要费很大的周折。因此,我不建议在鸿蒙应用中,用这种方式去解析 XML 并获取数据。

2、@ohos.convertxml

该模块相当简洁,一共就两个接口:ConvertXML 和 ConvertOptions,而 ConvertXML 下,目前就剩下一个官方还在维护的 fastConvertToJSObject(xml: string, options?: ConvertOptions) : Object 方法,而 ConvertOption 主要用于声明格式转换过程中使用映射关系:
在这里插入图片描述
最终会用指定映射关系,生成一个Javascript 对象,而 Javascript 对象在 ArkTS 中,读取数据就方便了,也因此,我首推大家用这个 API 去实现鸿蒙应用中的 XML 解析功能。

三、XML 解析实践

这里,直接以 CSDN 对外提供的 RSS 订阅为 XML 数据,使用 ConvertXML 接口进行解析实践。

1、源数据结构

首先,看一下 CSDN 的 RSS 订阅链接返回的 XML 数据的结构:
在这里插入图片描述如图所圈,在 channel 标签下的 item 标签封装了具体的文章信息,如文章标题、文章链接和文章简介等,而这也是我们订阅 RSS 所需要的核心数据,所以,就需要将里面的所有 item 标签中的文章信息读取出来。

2、定义映射关系

为了将 XML 数据转换 Javascript 对象数据,需要定一个 ConvertXML.fastConvertToJSObject 方法所需的键值映射关系:

let options: convertxml.ConvertOptions = {trim: false,declarationKey: "_declaration",instructionKey: "_instruction",attributesKey: "_attributes",textKey: "_text",cdataKey: "_cdata",doctypeKey: "_doctype",commentKey: "_comment",parentKey: "_parent",typeKey: "_type",nameKey: "_name",elementsKey: "_elements"
}

3、定义接收对象

ConvertXML.fastConvertToJSObject 方法会将 XML 数据转换成 Javascript 对象,然而, ArkTS 语法现在不允许用 data['key'] 形式去读取对象字段,只能用 object.field 的方式读取,所以,就需要根据 ConvertXML.fastConvertToJSObject 生成的对象数据结构:
在这里插入图片描述去定义一个对应的ArkTS 类:
在这里插入图片描述有了这个 XMLModel,那么就可以直接用语句 const xml: XMLModel = conv.fastConvertToJSObject(strXML, options) as XMLModel; 保存转换结果。

4、获取文章信息

有了 XMLModel 去接受 fastConvertToJSObject 方法的转换结果,从中获取具体的文章信息就容易很多了,同样的,为了方便页面展示或者透传文章信息到其他页面,需要定义相应的 Model:

export class DocModel {title: string = "";link: string = "";author: string = "";pubDate: string = "";description: string = "";
}

而进一步解析 XMLModel 获取文章信息,则可以通过如下两个方法完成:
在这里插入图片描述在这里插入图片描述

四、总结

鸿蒙应用中使用 XML 格式的数据,关键还是在于将其转换成可直接使用的类对象,而这个转换过程,无需开发者自己实现,鸿蒙SDK中的 ConvertXML 接口早已提供相应能力,开发者只需关心转换之后的 Javascript 对象该如何定义,以及进一步解析后的数据如何封装和使用。


文章转载自:

http://GYnBlPxc.rhkgz.cn
http://zlQKYybi.rhkgz.cn
http://L2toKzK1.rhkgz.cn
http://Rtd8MdNS.rhkgz.cn
http://72YJBGcA.rhkgz.cn
http://VGcYeaZs.rhkgz.cn
http://InFK7c8K.rhkgz.cn
http://kBTCl6Rh.rhkgz.cn
http://pJwwSTW2.rhkgz.cn
http://hJfbLp1L.rhkgz.cn
http://6lIqfGQQ.rhkgz.cn
http://xICO1Eu9.rhkgz.cn
http://eNEScM0a.rhkgz.cn
http://41e0VhC1.rhkgz.cn
http://hLzlLVYk.rhkgz.cn
http://PWyujDY6.rhkgz.cn
http://kLNjru2i.rhkgz.cn
http://4npTs4Bd.rhkgz.cn
http://19BGwoDe.rhkgz.cn
http://njYKQbnp.rhkgz.cn
http://HL2MZcEQ.rhkgz.cn
http://IqVVrlGZ.rhkgz.cn
http://l4hTviUK.rhkgz.cn
http://vnqniSpg.rhkgz.cn
http://AO1syoXk.rhkgz.cn
http://THSPihBS.rhkgz.cn
http://uPDXTT9G.rhkgz.cn
http://pnuYsIwd.rhkgz.cn
http://gWyv7Z29.rhkgz.cn
http://gJnFfPum.rhkgz.cn
http://www.dtcms.com/wzjs/740120.html

相关文章:

  • 销售网站免费模板建设旅游网站的意义
  • 华为云云速建站北京建设住房和城乡建设官网
  • 青岛东八区创意做网站长沙建站
  • 一个网站如何做seo优化医药公司网站建设方案
  • 淄博网站制作建设优化成都网站维护
  • 做营销的网站推广wordpress后台加载慢
  • 网站做系统叫什么软件吗山东做网站建设公司
  • 本地的赣州网站建设产品设计招聘网站
  • 祝桥建设网站怎样做单页销售网站
  • 二手交易网站开发可参考文献做网站常用的技术有哪些
  • j建设局域网网站四川酒店网站建设
  • 运城做网站费用高吗公司做网站走什么费
  • 建个网站 网页空间多少福建厦门网站建设公司
  • 网站建设百度文库外卖平台app开发多少钱
  • 中国建设银行蚌埠官方网站家乡网页设计模板
  • 寻找企业网站建设安全的集团网站建设
  • 建设一个网站需要哪些硬件设备江西省城乡和住房建设部网站
  • 如何招网站开发人员wordpress wp_tag_cloud
  • 如何做房地产微信推送网站广告网站建设质量保证
  • 承德网站建设规划app开发公司大概多少钱
  • 不同类型网站栏目设置区别西部数码网站管理助手 ftp密码
  • 承接网站开发江阴哪里有做网站推广
  • 龙岩做网站开发哪家厉害php做的网站建设
  • 良精企业网站管理系统永久免费的网站哪个好
  • 在阿里云做的网站怎么进后台网页设计报告参考文献
  • 南京网站优化平台软件开发工程师需要什么证书
  • 无锡网站建设要多少钱热门游戏推荐
  • 做网站要用什么软件教你如何快速建站
  • ps网站专题怎么做网站建设空间域名是什么意思
  • 网站入口专业微网站