京东6.18大促主会场领京享红包更优惠

 找回密码
 立即注册

QQ登录

只需一步,快速开始

nodejs剖析xml文件方式(xml->json)

2024-11-2 22:45| 发布者: 2ae29| 查看: 122| 评论: 0

摘要: 目录nodejs剖析xml文件(xml->json)nodejs剖析xml文件的方式有很多在开辟中要剖析的xml文件内容总结nodejs剖析xml文件(xml->json) nodejs剖析xml文件的方式有很多 xml2jxmlreaderxmldom+xpathxmldocxml-js&hellip
目录

nodejs剖析xml文件(xml->json)

nodejs剖析xml文件的方式有很多

  • xml2j
  • xmlreader
  • xmldom+xpath
  • xmldoc
  • xml-js

可自行访问官网,内里有效法示例,在此不再进行赘述。

在开辟中要剖析的xml文件内容

如下:

[code]<xml xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882' xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882' xmlns:rs='urn:schemas-microsoft-com:rowset' xmlns:z='#RowsetSchema'> <s:Schema id='RowsetSchema'> <s:ElementType name='row'> <s:AttributeType name='grade' rs:number='1'> <s:datatype dt:type='varchar' dt:maxLength='64'/> </s:AttributeType> <s:AttributeType name='sex' rs:number='8'> <s:datatype dt:type='numeric' dt:maxLength='22'/> </s:AttributeType> </s:ElementType> </s:Schema> <rs:data> <z:row grade='2' sex='男' /> </rs:data> </xml>[/code]

业务上需要获取[code]z:row[/code] 内里的属性,即[code]grade='2' sex='男'[/code],搞了一下战书,利用xml2j,xmlreader…获取到的数据都不是想要的结果,末了利用xml-js一下就成功了。

开心撒花~

代码如下:

[code]let filepath = 'H:\\workcode\\xml\\TCOMPANY.xml' const fs = require('fs'); let convert = require('xml-js'); let xml = fs.readFileSync(filepath,'utf-8'); let result1 = convert.xml2json(xml, {compact: true, spaces: 4}); console.log(result1);[/code]

结果如下:

[code]{ "xml": { "_attributes": { "xmlns:s": "uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882", "xmlns:dt": "uuid:C2F41010-65B3-11d1-A29F-00AA00C14882", "xmlns:rs": "urn:schemas-microsoft-com:rowset", "xmlns:z": "#RowsetSchema" }, "s:Schema": { "_attributes": { "id": "RowsetSchema" }, "s:ElementType": { "_attributes": { "name": "row" }, "s:AttributeType": [ { "_attributes": { "name": "grade", "rs:number": "1" }, "s:datatype": { "_attributes": { "dt:type": "varchar", "dt:maxLength": "64" } } }, { "_attributes": { "name": "sex", "rs:number": "8" }, "s:datatype": { "_attributes": { "dt:type": "numeric", "dt:maxLength": "22" } } } ] } }, "rs:data": { "z:row": { "_attributes": { "grade": "2", "sex": "男" } } } } }[/code]

成功啦!

总结

以上为个人履历,希望能给各人一个参考,也希望各人多多支持脚本之家。


来源:https://www.jb51.net/javascript/3266460g9.htm
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
关闭

站长推荐上一条 /6 下一条

QQ|手机版|小黑屋|梦想之都-俊月星空 ( 粤ICP备18056059号 )|网站地图

GMT+8, 2025-7-2 08:49 , Processed in 0.046939 second(s), 18 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2025 Discuz! Team.

返回顶部