codecamp

xml转换JavaScript

本模块提供转换xml文本为JavaScript对象的功能。

说明

本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

  1. 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.

示例:

  1. try {
  2. let xml =
  3. '<?xml version="1.0" encoding="utf-8"?>' +
  4. '<note importance="high" logged="true">' +
  5. ' <title>Happy</title>' +
  6. ' <todo>Work</todo>' +
  7. ' <todo>Play</todo>' +
  8. '</note>';
  9. let conv = new convertxml.ConvertXML()
  10. let options = {
  11. trim: false, declarationKey: "_declaration",
  12. instructionKey: "_instruction", attributesKey: "_attributes",
  13. textKey: "_text", cdataKey: "_cdata", doctypeKey: "_doctype",
  14. commentKey: "_comment", parentKey: "_parent", typeKey: "_type",
  15. nameKey: "_name", elementsKey: "_elements"
  16. }
  17. let result = JSON.stringify(conv.convertToJSObject(xml, options));
  18. console.log(result);
  19. } catch (e) {
  20. console.log(e.toString());
  21. }
  22. // 输出(宽泛型)
  23. // {"_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对象。

示例:

  1. let xml =
  2. '<?xml version="1.0" encoding="utf-8"?>' +
  3. '<note importance="high" logged="true">' +
  4. ' <title>Happy</title>' +
  5. ' <todo>Work</todo>' +
  6. ' <todo>Play</todo>' +
  7. '</note>';
  8. let conv = new convertxml.ConvertXML();
  9. let options = {trim : false, declarationKey:"_declaration",
  10. instructionKey : "_instruction", attributesKey : "_attributes",
  11. textKey : "_text", cdataKey:"_cdata", doctypeKey : "_doctype",
  12. commentKey : "_comment", parentKey : "_parent", typeKey : "_type",
  13. nameKey : "_name", elementsKey : "_elements"}
  14. let result = JSON.stringify(conv.convert(xml, options));
  15. console.log(result);
  16. // 输出(宽泛型)
  17. // {"_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

转换选项。

系统能力: 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的属性键的名称。

二进制数据的缓存区
获取进程相关的信息
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

媒体组件

像素

枚举

类型

接口

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }