<?xml version="1.0" encoding="GB2312"?>
<hi>
  <one id="1">
        <name>ttttttt</name>
<age>10</age>
  </one>
  <one id="2">
        <name>lllllll</name>
<age>11</age>
  </one>
  <one id="3">
        <name>fffffff</name>
<age>12</age>
  </one>
</hi>例如上面的XML,我要修改某一个元素的其中一个节点的属性值,用java应该怎么写?

解决方案 »

  1.   

    根据你要修改的节点写个update方法,然后调用它,之后写到文件里就行了
      

  2.   

    我是这么写的,但在调试中发现,e是null。    elementId 是参数,代表的是XML中的id属性;nodeName也是参数,表示的是XML中节点的名字Document doc = getDocument(xmlFile,factory);
    Element e = doc.getElementById(elementId);
    NodeList nn = e.getChildNodes();
    for(int i = 0;i<nn.getLength();i++){
    if(e.getNodeName().equals(nodeName)){
    Node n = nn.item(i);
    n.setNodeValue(value);
    }
    } 不知道我这样写对不对