c语言编程笔录

首页 >   > 笔记大全

笔记大全

关于XML文档的基本操作的实例代码分享

更新时间:2023-11-07

XML文档基本操作实例

1. 创建XML文档

以下是一个简单的XML文档示例:

  <?xml version="1.0" encoding="UTF-8"?>
  
    
      张三
      20
    
    
      李四
      21
    
  
  

2. 解析XML文档

使用XML DOM来解析XML文档:

  var xmlDoc=loadXMLDoc("example.xml");
  var persons=xmlDoc.getElementsByTagName("person");
  for (var i=0; i < persons.length; i++) {
    var id=persons[i].getAttribute("id");
    var name=persons[i].getElementsByTagName("name")[0].childNodes[0].nodeValue;
    var age=persons[i].getElementsByTagName("age")[0].childNodes[0].nodeValue;
    console.log("id:" + id + ", name:" + name + ", age:" + age);
  }
  
  function loadXMLDoc(filename) {
    if (window.XMLHttpRequest) {
      xhttp=new XMLHttpRequest();
    } else {
      xhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xhttp.open("GET", filename, false);
    xhttp.send();
    return xhttp.responseXML;
  }
  

3. 修改XML文档

使用XML DOM来修改XML文档:

 
  var xmlDoc=loadXMLDoc("example.xml");
  var persons=xmlDoc.getElementsByTagName("person");
  for (var i=0; i < persons.length; i++) {
    var age=persons[i].getElementsByTagName("age")[0];
    var newAge=xmlDoc.createElement("newAge");
    newAge.innerHTML=parseInt(age.childNodes[0].nodeValue) + 1;
    persons[i].replaceChild(newAge, age);
  }
  
  function loadXMLDoc(filename) {
    if (window.XMLHttpRequest) {
      xhttp=new XMLHttpRequest();
    } else {
      xhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xhttp.open("GET", filename, false);
    xhttp.send();
    return xhttp.responseXML;
  }
  

4. 创建新节点

使用XML DOM来创建新节点,并添加到XML文档中:

  var xmlDoc=loadXMLDoc("example.xml");
  var root=xmlDoc.getElementsByTagName("root")[0];
  var newPerson=xmlDoc.createElement("person");
  newPerson.setAttribute("id", "3");
  var newName=xmlDoc.createElement("name");
  newName.innerHTML="王五";
  var newAge=xmlDoc.createElement("age");
  newAge.innerHTML="22";
  newPerson.appendChild(newName);
  newPerson.appendChild(newAge);
  root.appendChild(newPerson);
  
  function loadXMLDoc(filename) {
    if (window.XMLHttpRequest) {
      xhttp=new XMLHttpRequest();
    } else {
      xhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xhttp.open("GET", filename, false);
    xhttp.send();
    return xhttp.responseXML;
  }
  

以上是XML文档基本操作的实例代码分享,我们可以通过XML DOM来读取、修改、创建XML文档。