@ohos.convertxml (xml轉(zhuǎn)換JavaScript)
本模塊提供轉(zhuǎn)換xml文本為JavaScript對(duì)象的功能。
說明:
本模塊首批接口從API version 8開始支持。后續(xù)版本的新增接口,采用上角標(biāo)單獨(dú)標(biāo)記接口的起始版本。
導(dǎo)入模塊
import convertxml from '@ohos.convertxml';
ConvertXML
convertToJSObject9+
convertToJSObject(xml: string, options?: ConvertOptions) : Object
轉(zhuǎn)換xml文本為JavaScript對(duì)象。
系統(tǒng)能力: SystemCapability.Utils.Lang
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
xml | string | 是 | 傳入的xml文本。 |
options | [ConvertOptions] | 否 | 轉(zhuǎn)換選項(xiàng) , 默認(rèn)值是ConvertOptions對(duì)象 , 由其中各個(gè)屬性的默認(rèn)值組成。 |
返回值:
類型 | 說明 |
---|---|
Object | 處理后返回的JavaScript對(duì)象。 |
錯(cuò)誤碼:
以下錯(cuò)誤碼的詳細(xì)介紹請(qǐng)參見[語言基礎(chǔ)類庫錯(cuò)誤碼]
錯(cuò)誤碼ID | 錯(cuò)誤信息 |
---|---|
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
轉(zhuǎn)換xml文本為JavaScript對(duì)象。
說明:
從API version 8開始支持,從API version 9開始廢棄,建議使用[convertToJSObject9+]替代。
系統(tǒng)能力: SystemCapability.Utils.Lang
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
xml | string | 是 | 傳入的xml文本。 |
options | [ConvertOptions] | 否 | 轉(zhuǎn)換選項(xiàng) , 默認(rèn)值是ConvertOptions對(duì)象 , 由其中各個(gè)屬性的默認(rèn)值組成。 |
返回值:
類型 | 說明 |
---|---|
Object | 處理后返回的JavaScript對(duì)象。 |
示例:
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
鴻蒙開發(fā)指導(dǎo)文檔:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
轉(zhuǎn)換選項(xiàng)。
系統(tǒng)能力: SystemCapability.Utils.Lang
名稱 | 類型 | 必填 | 說明 |
---|---|---|---|
trim | boolean | 是 | 是否修剪位于文本前后的空白字符。 |
ignoreDeclaration | boolean | 否 | 是否忽略xml寫入聲明指示,默認(rèn)false。 |
ignoreInstruction | boolean | 否 | 是否忽略xml的寫入處理指令,默認(rèn)false。 |
ignoreAttributes | boolean | 否 | 是否跨多行打印屬性并縮進(jìn)屬性,默認(rèn)false。 |
ignoreComment | boolean | 否 | 是否忽略元素的注釋信息,默認(rèn)false。 |
ignoreCDATA | boolean | 否 | 是否忽略元素的CDATA信息,默認(rèn)false。 |
ignoreDoctype | boolean | 否 | 是否忽略元素的Doctype信息,默認(rèn)false。 |
ignoreText | boolean | 否 | 是否忽略元素的文本信息,默認(rèn)false。 |
declarationKey | string | 是 | 用于輸出對(duì)象中declaration的屬性鍵的名稱。 |
instructionKey | string | 是 | 用于輸出對(duì)象中instruction的屬性鍵的名稱。 |
attributesKey | string | 是 | 用于輸出對(duì)象中attributes的屬性鍵的名稱。 |
textKey | string | 是 | 用于輸出對(duì)象中text的屬性鍵的名稱。 |
cdataKey | string | 是 | 用于輸出對(duì)象中cdata的屬性鍵的名稱 |
doctypeKey | string | 是 | 用于輸出對(duì)象中doctype的屬性鍵的名稱。 |
commentKey | string | 是 | 用于輸出對(duì)象中comment的屬性鍵的名稱。 |
parentKey | string | 是 | 用于輸出對(duì)象中parent的屬性鍵的名稱。 |
typeKey | string | 是 | 用于輸出對(duì)象中type的屬性鍵的名稱。 |
nameKey | string | 是 | 用于輸出對(duì)象中name的屬性鍵的名稱。 |
elementsKey | string | 是 | 用于輸出對(duì)象中elements的屬性鍵的名稱。 |
審核編輯 黃宇
-
鴻蒙
+關(guān)注
關(guān)注
57文章
2305瀏覽量
42697 -
OpenHarmony
+關(guān)注
關(guān)注
25文章
3647瀏覽量
16071
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論