色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美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>
    主站蜘蛛池模板: 狂躁美女BBBBBB视频| 一本道dvd久久综合高清免费| 男女夜晚在爽视频免费观看| 黑人猛挺进小莹的体内视频| 国产麻豆精品久久一二三 | 九九热久久只有精品2| 国产毛A片啊久久久久久A| 丰满人妻按磨HD| 国产AV一区二区三区传媒| 抽插性奴中出乳精内射| 粗暴玩烂货调教| 成人毛片大全| 高h 纯肉文| 国产精品久久久久永久免费看| 荡乳乱公小说| 国产精品VIDEOS麻豆TUBE| 国产精品成人A蜜柚在线观看 | 亚洲一区成人| 一本之道高清在线观看一区| 亚洲欧洲日产国码久在线| 亚洲免费观看| 国产三区在线成人AV| 国产精品第100页| 国产三级在线精品男人的天堂| 国产亚洲精品久久无码98| 国模啪啪久久久久久久| 簧片高清在线观看| 久久亚洲精品AV成人无码| 蜜桃成熟时2在线| 青青青青久久久久国产的| 三级黄色在线看| 亚洲爆乳少妇精品无码专区| 一个人色导航| 9420高清免费观看在线大全| 超碰97超碰在线视频哦| 国产精品久久精品视| 九九热在线视频观看这里只有精品| 李亚男三级| 日韩欧美一区二区三区免费看| 先锋影音av无码第1页| 瑜伽牲交AV|