@ohos.convertxml (xml轉換JavaScript)
本模塊提供轉換xml文本為JavaScript對象的功能。
說明:
導入模塊
import convertxml from '@ohos.convertxml';
ConvertXML
convertToJSObject9+
convertToJSObject(xml: string, options?: ConvertOptions) : Object
轉換xml文本為JavaScript對象。
系統能力: SystemCapability.Utils.Lang
參數:
| 參數名 | 類型 | 必填 | 說明 |
|---|---|---|---|
| xml | string | 是 | 傳入的xml文本。 |
| options | [ConvertOptions] | 否 | 轉換選項 , 默認值是ConvertOptions對象 , 由其中各個屬性的默認值組成。 |
返回值:
| 類型 | 說明 |
|---|---|
| Object | 處理后返回的JavaScript對象。 |
錯誤碼:
以下錯誤碼的詳細介紹請參見[語言基礎類庫錯誤碼]
| 錯誤碼ID | 錯誤信息 |
|---|---|
| 10200002 | Invalid xml string. |
示例:
try {
let xml =
'< ?xml version="1.0" encoding="utf-8"? >' +
'< note importance="high" logged="true" >' +
' < title >Happy< /title >' +
' < todo >Work< /todo >' +
' < todo >Play< /todo >' +
'< /note >';
let conv = new convertxml.ConvertXML()
let options = {
trim: false, declarationKey: "_declaration",
instructionKey: "_instruction", attributesKey: "_attributes",
textKey: "_text", cdataKey: "_cdata", doctypeKey: "_doctype",
commentKey: "_comment", parentKey: "_parent", typeKey: "_type",
nameKey: "_name", elementsKey: "_elements"
}
let result = JSON.stringify(conv.convertToJSObject(xml, options));
console.log(result);
} catch (e) {
console.log(e.toString());
}
// 輸出(寬泛型)
// {"_declaration":{"_attributes":{"version":"1.0","encoding":"utf-8"}},"_elements":[{"_type":"element","_name":"note","_attributes":{"importance":"high","logged":"true"},"_elements":[{"_type":"element","_name":"title","_elements":[{"_type":"text","_text":"Happy"}]},{"_type":"element","_name":"todo","_elements":[{"_type":"text","_text":"Work"}]},{"_type":"element","_name":"todo","_elements":[{"_type":"text","_text":"Play"}]}]}]}
convert(deprecated)
convert(xml: string, options?: ConvertOptions) : Object
轉換xml文本為JavaScript對象。
說明:
從API version 8開始支持,從API version 9開始廢棄,建議使用[convertToJSObject9+]替代。
系統能力: SystemCapability.Utils.Lang
參數:
| 參數名 | 類型 | 必填 | 說明 |
|---|---|---|---|
| xml | string | 是 | 傳入的xml文本。 |
| options | [ConvertOptions] | 否 | 轉換選項 , 默認值是ConvertOptions對象 , 由其中各個屬性的默認值組成。 |
返回值:
| 類型 | 說明 |
|---|---|
| Object | 處理后返回的JavaScript對象。 |
示例:
let xml =
'< ?xml version="1.0" encoding="utf-8"? >' +
'< note importance="high" logged="true" >' +
' < title >Happy< /title >' +
' < todo >Work< /todo >' +
' < todo >Play< /todo >' +
'< /note >';
let conv = new convertxml.ConvertXML();
let options = {trim : false, declarationKey:"_declaration",
instructionKey : "_instruction", attributesKey : "_attributes",
textKey : "_text", cdataKey:"_cdata", doctypeKey : "_doctype",
commentKey : "_comment", parentKey : "_parent", typeKey : "_type",
nameKey : "_name", elementsKey : "_elements"}
let result = JSON.stringify(conv.convert(xml, options));
console.log(result);
// 輸出(寬泛型)
// {"_declaration":{"_attributes":{"version":"1.0","encoding":"utf-8"}},"_elements":[{"_type":"element","_name":"note","_attributes":{"importance":"high","logged":"true"},"_elements":[{"_type":"element","_name":"title","_elements":[{"_type":"text","_text":"Happy"}]},{"_type":"element","_name":"todo","_elements":[{"_type":"text","_text":"Work"}]},{"_type":"element","_name":"todo","_elements":[{"_type":"text","_text":"Play"}]}]}]}
ConvertOptions
鴻蒙開發指導文檔:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

轉換選項。
系統能力: SystemCapability.Utils.Lang
| 名稱 | 類型 | 必填 | 說明 |
|---|---|---|---|
| trim | boolean | 是 | 是否修剪位于文本前后的空白字符。 |
| ignoreDeclaration | boolean | 否 | 是否忽略xml寫入聲明指示,默認false。 |
| ignoreInstruction | boolean | 否 | 是否忽略xml的寫入處理指令,默認false。 |
| ignoreAttributes | boolean | 否 | 是否跨多行打印屬性并縮進屬性,默認false。 |
| ignoreComment | boolean | 否 | 是否忽略元素的注釋信息,默認false。 |
| ignoreCDATA | boolean | 否 | 是否忽略元素的CDATA信息,默認false。 |
| ignoreDoctype | boolean | 否 | 是否忽略元素的Doctype信息,默認false。 |
| ignoreText | boolean | 否 | 是否忽略元素的文本信息,默認false。 |
| declarationKey | string | 是 | 用于輸出對象中declaration的屬性鍵的名稱。 |
| instructionKey | string | 是 | 用于輸出對象中instruction的屬性鍵的名稱。 |
| attributesKey | string | 是 | 用于輸出對象中attributes的屬性鍵的名稱。 |
| textKey | string | 是 | 用于輸出對象中text的屬性鍵的名稱。 |
| cdataKey | string | 是 | 用于輸出對象中cdata的屬性鍵的名稱 |
| doctypeKey | string | 是 | 用于輸出對象中doctype的屬性鍵的名稱。 |
| commentKey | string | 是 | 用于輸出對象中comment的屬性鍵的名稱。 |
| parentKey | string | 是 | 用于輸出對象中parent的屬性鍵的名稱。 |
| typeKey | string | 是 | 用于輸出對象中type的屬性鍵的名稱。 |
| nameKey | string | 是 | 用于輸出對象中name的屬性鍵的名稱。 |
| elementsKey | string | 是 | 用于輸出對象中elements的屬性鍵的名稱。 |
審核編輯 黃宇
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
鴻蒙
+關注
關注
60文章
2963瀏覽量
45889 -
OpenHarmony
+關注
關注
33文章
3952瀏覽量
21099
發布評論請先 登錄
相關推薦
熱點推薦
趕緊收藏!7大類400多種組件,鴻蒙三方庫來了!
方法https://gitee.com/openharmony-tpc/butterknifeassertj-ohos快速調用其他封裝庫https://gitee.com/openharmon
發表于 05-07 14:07
HarmonyOS/OpenHarmony應用開發-Stage模型ArkTS語言擴展能力基類
\'@ohos.app.ability.ExtensionAbility\';
接口示例:
*附件:HarmonyOSOpenHarmony應用開發-stage模型ArkTS語言擴展能力基類
發表于 04-26 10:00
OpenHarmony C++公共基礎類庫應用案例:HelloWorld
1、程序簡介
該程序是基于OpenHarmony的C++公共基礎類庫的簡單案例:HelloWorld。
該應用案例已在OpenHarmony凌蒙派-RK3568開發板(即
發表于 11-22 11:21
OpenHarmony C++公共基礎類庫應用案例:Thread
OpenHarmony C++公共基礎類庫應用案例:Thread
1、程序簡介
該程序是基于OpenHarmony的C++公共基礎類
發表于 11-22 11:50
基于openharmony移植的ohos拼圖支持庫
項目介紹 項目名稱:PuzzleView 所屬系列:openharmony的第三方組件適配移植 功能:ohos拼圖支持庫 項目移植狀態:主功能完成,由于ohos暫不支持,所以分享功能暫
發表于 03-22 11:24
?2次下載
基于openharmony適配移植的Ohos應用程序評價
項目介紹 項目名稱:OhosRateThisApp 所屬系列:openharmony的第三方組件適配移植 功能:ohos庫顯示“為該應用評分”對話框 項目移植狀態:主功能完成 調用差異:無 開發版本
發表于 03-28 10:33
?2次下載
openharmony第三方組件適配移植易于使用的ohos庫
項目介紹 項目名稱:MaterialScrollBar 所屬系列:openharmony的第三方組件適配移植 功能:易于使用的ohos庫,可輕松實現滾動跟隨效果 項目移植狀態:主功能完成 調用差異
發表于 03-30 10:44
?0次下載
基于openharmony適配移植的控件和常用類庫組合成的Genius-Ohos
項目介紹 項目名稱:Genius-Ohos 所屬系列:openharmony的第三方組件適配移植 功能:是 Material Design 控件和一些常用類庫組合而成 項目移植狀態:主
發表于 04-07 09:06
?1次下載
OpenHarmony C++公共基礎類庫應用案例:Thread
1、程序簡介該程序是基于OpenHarmony的C++公共基礎類庫的線程處理:Thread。該應用案例已在OpenHarmony凌蒙派-RK3568開發板(即
OpenHarmony C++公共基礎類庫應用案例:HelloWorld
1、程序簡介該程序是基于OpenHarmony的C++公共基礎類庫的簡單案例:HelloWorld。該應用案例已在OpenHarmony凌蒙派-RK3568開發板(即
OpenHarmony標準系統C++公共基礎類庫案例:HelloWorld
1、程序簡介該程序是基于凌蒙派OpenHarmony-v3.2.1標準系統C++公共基礎類庫的簡單案例:HelloWorld。主要講解C++公共基礎類
基于OpenHarmony標準系統的C++公共基礎類庫案例:SafeBlockQueue
1、程序簡介該程序是基于OpenHarmony的C++公共基礎類庫的讀寫鎖:SafeBlockQueue。線程安全阻塞隊列SafeBlockQueue類,提供阻塞和非阻塞版的入隊入隊和
OpenHarmony語言基礎類庫【@ohos.convertxml】
評論