色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

XML 在 HarmonyOS 中的生成,解析與轉換(上)

王程 ? 來源:jf_75796907 ? 作者:jf_75796907 ? 2024-02-18 09:35 ? 次閱讀

一、XML 概述

XML(可擴展標記語言)是一種用于描述數據的標記語言,旨在提供一種通用的方式來傳輸和存儲數據,特別是 Web 應用程序中經常使用的數據。XML 并不預定義標記。因此,XML 更加靈活,并且可以適用于廣泛的應用領域。

XML 文檔由元素(element)、屬性(attribute)和內容(content)組成。

? ● 元素指的是標記對,包含文本、屬性或其他元素。

? ● 屬性提供了有關元素的其他信息

? ● 內容則是元素包含的數據或子元素。

XML 還可以通過使用 XML Schema 或 DTD(文檔類型定義)來定義文檔結構。這些機制允許開發人員創建自定義規則以驗證 XML 文檔是否符合其預期的格式。

XML 還支持命名空間、實體引用、注釋、處理指令等特性,使其能夠靈活地適應各種數據需求。

語言基礎類庫提供了 XML 相關的基礎能力,包括:XML 的生成、XML 的解析和 XML 的轉換。

XML 可以作為數據交換格式,被各種系統和應用程序所支持。例如 Web 服務,可以將結構化數據以 XML 格式進行傳遞。

XML 還可以作為消息傳遞格式,在分布式系統中用于不同節點之間的通信與交互。

二、XML 生成

注意事項

? ● XML 標簽必須成對出現,生成開始標簽就要生成結束標簽。

? ● XML 標簽對大小寫敏感,開始標簽與結束標簽大小寫要一致。

開發步驟

XML 模塊提供 XmlSerializer 類來生成 XML 文件,輸入為固定長度的 Arraybuffer 或 DataView 對象,該對象用于存放輸出的 XML 數據。

通過調用不同的方法來寫入不同的內容,如 startElement (name: string) 寫入元素開始標記,setText (text: string) 寫入標簽值。

XML 模塊的 API 接口可以參考 @ohos.xml 的詳細描述,按需求調用對應函數可以生成一份完整的 XML 文件。

? 1. 引入模塊。

import xml from '@ohos.xml'; 
import util from '@ohos.util';

? 2. 創建緩沖區,構造 XmlSerializer 對象(可以基于 Arraybuffer 構造 XmlSerializer 對象, 也可以基于 DataView 構造 XmlSerializer 對象)。

// 1.基于Arraybuffer構造XmlSerializer對象
let arrayBuffer = new ArrayBuffer(2048); // 創建一個2048字節的緩沖區
let thatSer = new xml.XmlSerializer(arrayBuffer); // 基于Arraybuffer構造XmlSerializer對象

// 2.基于DataView構造XmlSerializer對象
let arrayBuffer = new ArrayBuffer(2048); // 創建一個2048字節的緩沖區
let dataView = new DataView(arrayBuffer); // 使用DataView對象操作ArrayBuffer對象
let thatSer = new xml.XmlSerializer(dataView); // 基于DataView構造XmlSerializer對象

? 3. 調用 XML 元素生成函數。

thatSer.setDeclaration(); // 寫入xml的聲明
thatSer.startElement('bookstore'); // 寫入元素開始標記
thatSer.startElement('book'); // 嵌套元素開始標記
thatSer.setAttributes('category', 'COOKING'); // 寫入屬性及屬性值
thatSer.startElement('title');
thatSer.setAttributes('lang', 'en');
thatSer.setText('Everyday'); // 寫入標簽值
thatSer.endElement(); // 寫入結束標記
thatSer.startElement('author');
thatSer.setText('Giada');
thatSer.endElement();
thatSer.startElement('year');
thatSer.setText('2005');
thatSer.endElement();
thatSer.endElement();
thatSer.endElement();

? 4. 使用 Uint8Array 操作 Arraybuffer,調用 TextDecoder 對 Uint8Array 解碼后輸出。

let view = new Uint8Array(arrayBuffer); // 使用Uint8Array讀取arrayBuffer的數據
let textDecoder = util.TextDecoder.create(); // 調用util模塊的TextDecoder類
let res = textDecoder.decodeWithStream(view); // 對view解碼
console.info(res);

輸出結果如下:

rn  rn    Everydayrn    Giadarn    2005rn  rn


審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • XML
    XML
    +關注

    關注

    0

    文章

    188

    瀏覽量

    33078
  • HarmonyOS
    +關注

    關注

    79

    文章

    1973

    瀏覽量

    30145
收藏 人收藏

    評論

    相關推薦

    XMLHarmonyOS生成解析轉換(下)

    一、XML 解析 對于以 XML 作為載體傳遞的數據,實際使用需要對相關的節點進行解析,一般包括解析
    的頭像 發表于 02-18 10:07 ?736次閱讀

    OpenHarmony語言基礎類庫【@ohos.xml (xml解析生成)】

    XML文本轉換為JavaScript對象、以及XML文件生成解析的一系列接口。
    的頭像 發表于 05-08 17:05 ?851次閱讀

    ArkTS語言基礎類庫-解析

    被設計用來傳輸和存儲數據,是一種可擴展標記語言。語言基礎類庫提供了[XML生成解析轉換]的能力。 URL、URI構造和解析能力:其中[U
    發表于 02-20 16:44

    跪求大神--XML解析

    小弟近日做一案子,需要用到UDP通訊,內容以XML格式發送接收。通訊沒有問題,現在的難題是如何把接收到的XML信息直接解析出來,提取想要的字符串內容。NI里面有例子都是讀取文檔的,想問各路大神有沒有辦法直接從
    發表于 06-04 10:22

    XML解析轉樹形控件

    xml解析成樹形控件執行速度奇慢代碼見附件版本8.6以上求提高效率的辦法
    發表于 10-17 14:59

    DevEco Studio將SVG文件轉換XML文件的過程分享

    轉為為XML格式的文件,然后布局文件引用轉換后的XML文件。這樣,就可以模擬器/預覽器或者
    發表于 05-06 11:23

    【中秋國慶不斷更】XMLHarmonyOS生成解析轉換

    XML還支持命名空間、實體引用、注釋、處理指令等特性,使其能夠靈活地適應各種數據需求。 語言基礎類庫提供了XML相關的基礎能力,包括:??XML生成??、??
    發表于 09-27 15:21

    【中秋國慶不斷更】XMLHarmonyOS生成解析轉換(下)

    一、XML解析 對于以XML作為載體傳遞的數據,實際使用需要對相關的節點進行解析,一般包括??解析
    發表于 09-27 15:24

    HarmonyOS語言基礎類庫開發指南上線啦!

    指南中提供了詳細的介紹和開發指導,幫助開發者全面了解并發實現、容器類庫基礎操作、XML生成解析轉換等。 本期HarmonyOS開發者資料
    發表于 10-18 16:36

    報文解析工具XML數據字典

    針對報文解析過程存在的數據存儲無序、查詢和調用不便等問題,提出應用XML 數據字典進行數據存儲的方案。根據給定的數據表,設計XML 形式的數據字典。實現
    發表于 03-28 09:38 ?36次下載

    MTK自帶的XML解析

    現在大多數軟件都用xml作為配置文件,MTK本身也帶了XML文件的解析,在此我不評說自帶XML解析效率
    發表于 08-31 16:00 ?0次下載

    MAVLink學習之路03 _XML定義MSG并生成C代碼

    MAVLink學習之路03_XML定義MSG并生成C代碼
    的頭像 發表于 03-07 16:46 ?3624次閱讀

    異構文本數據轉換過程中解析XML文本的方法對比

    對異構文本數據轉換過程中解析XML文本的DOM、SAX、JOM4J方法進行對比研究,以解析時間、內存堆占用空間、CPU占用率為評價指標來判定4種解析
    發表于 03-25 11:12 ?9次下載
    異構文本數據<b class='flag-5'>轉換過程中</b><b class='flag-5'>解析</b><b class='flag-5'>XML</b>文本的方法對比

    HarmonyOS語言基礎類庫開發指南上線啦!

    指南中提供了詳細的介紹和開發指導,幫助開發者全面了解并發實現、容器類庫基礎操作、XML生成解析轉換等。 本期HarmonyOS開發者資料
    的頭像 發表于 10-18 16:20 ?576次閱讀
    <b class='flag-5'>HarmonyOS</b>語言基礎類庫開發指南上線啦!

    【JAVA UI】【HarmonyOS】【Demo】 鴻蒙如何進行 xml 解析

    創建xml文件,創建model對象,構建界面 2.數據進行解析操作(重點) 3.運行效果 第一步準備條件 創建 xml 文件,創建 model 對象,構建界面 1.1 rawfi
    的頭像 發表于 02-19 15:59 ?566次閱讀
    【JAVA UI】【<b class='flag-5'>HarmonyOS</b>】【Demo】 鴻蒙如何進行 <b class='flag-5'>xml</b> <b class='flag-5'>解析</b>
    主站蜘蛛池模板: 国产三级影院| 精品国产乱码久久久久久免费流畅| 丰满老熟女白浆直流| 男人舔女人的阴部黄色骚虎视频| 妖精视频一区二区免费| 国产精品乱码一区二区三| 日本美女阴道| WWW国产精品内射老师| 免费看的一级毛片| 最近中文字幕在线中文视频| 久草在线在线精品观看99| 亚洲字幕久久| 久久久高清国产999尤物| 一本道色播| 久久精品美女久久| 在线 中文字幕| 美女快播第一网| 9966在线观看免费高清电影| 蜜臀AV浪潮99国产麻豆 | 两个人的视频免费| 26uuu老色哥| 男人扒开添女人屁股| 99视频免费观看| 日韩人妻无码精品久久中文字幕| 国产91青青成人a在线| 亚洲91av| 久久亚洲欧美国产综合| 99久久国产综合精品国| 国产成人教育视频在线观看| 四虎永久免费| 花蝴蝶在线观看免费8| 2022国产精品不卡a| 日本漂亮妈妈7观整有限中| 国产盗摄一区二区三区| 亚洲不卡视频在线| 久久一级片| 被cao的奶水直喷高H| 学生精品国产在线视频| 久久偷拍国2017的| 动漫美女和男人下载| 亚洲精品一卡二卡三卡四卡2021 |