软件开发定制JavaScript实现解析xml文件数据

用js软件开发定制来解析文件,软件开发定制的数据很普遍,软件开发定制特别是一些老项目普遍都用xml格式的数据。在ajax里有个responseXML就返回的是xml格式的数据,下面是js如何解析xml文件,获得里面的数据。话不多说,直接上菜。


发送请求获取要解析的xml文件,并创建提取节点方法

  1. getXML(){
  2. axios({
  3. methods:"GET",
  4. url: "xxx",
  5. }).then(res=>{
  6. // 定义一个变量存储 调用从XML中提取节点数据方法 返回的数据
  7. //getXMLNode()是提取节点数据方法
  8. let resData=this.getXMLNode({xmlStr:res.data});
  9. console.log(resData);
  10. }).catch(error=>{
  11. console.log(error);
  12. });
  13. },

xml支持用getElementsByTagName()方法来获得节点名,第一次获取find的个数,第二次再取每个find里的标签名和值。

DOMParser() 构造函数新建一个 DOMParser 对象实例。此对象可用于使用该方法分析文档的文本。
parseFromString()方法解析包含 HTML或XML 的字符串,返回 HTMLDocument或XMLDocument

  1. getXMLNode(parm){
  2. let str=parm.xmlStr;
  3. //创建文档对象
  4. let xmlDoc = new DOMParser().parseFromString(str, "text/xml");
  5. let finds=xmlDoc.getElementsByTagName('find'); //获取find节点
  6. for (let i=0;i<finds.length;i++){ //循环节点
  7. let finder = finds[i];
  8. let nods = finder.childNodes;
  9. for (let j=0;j<nods.length;j++){ //循环子节点
  10. let child = nods[j]
  11. if (child.nodeType == 1){ //判断是否是标签
  12. console.log(child.nodeName+":"+child.firstChild.nodeValue)
  13. // console.log(child.nodeName+child.innerHTML);
  14. //两种方法取值
  15. }
  16. }
  17. }
  18. return finds
  19. }

 DOMParser 可以将存储在字符串中的 XML 或 HTML 源代码解析为一个 DOM Document。

这是要解析的xml数据:

 解析后log出来的内容:

 

解释xml文件,要注意先解析为dom树和节点的获取以及子节点的获取。

以上就是js实现读取xml文件内容,如有不明白的地方,可以留言。

此文章主要是方便自己以后遇到类似的查阅以及供有需要的小伙伴参考,

描述如有错误,欢迎指正

网站建设定制开发 软件系统开发定制 定制软件开发 软件开发定制 定制app开发 app开发定制 app开发定制公司 电商商城定制开发 定制小程序开发 定制开发小程序 客户管理系统开发定制 定制网站 定制开发 crm开发定制 开发公司 小程序开发定制 定制软件 收款定制开发 企业网站定制开发 定制化开发 android系统定制开发 定制小程序开发费用 定制设计 专注app软件定制开发 软件开发定制定制 知名网站建设定制 软件定制开发供应商 应用系统定制开发 软件系统定制开发 企业管理系统定制开发 系统定制开发