如何将修改数据保存到XML文件中public String JSetNodeValue(String strNodeName, String strNewNodeValue) {
m_DocumentBuilderFactory = DocumentBuilderFactory.newInstance();
m_DocumentBuilder = m_DocumentBuilderFactory.newDocumentBuilder();
m_Document = m_DocumentBuilder.parse(new File("C:\\aaa.xml"));
NodeList nodes = m_Document.getChildNodes();
for (int i = 0; i < nodes.getLength(); i++) {
Node node = nodes.item(i);
nodes childNodeList = node.getChildNodes();
if (node.getNodeName().equals(strNodeName) == true) {
/////////////////////
//写到这里就无法写下去,如何将修改的数据保存到XML或者给一个思路如何实现.谢谢:)
///////////////////
node.getFirstChild().setNodeValue(strNewNodeValue);
JSaveXML();
}
}public void JSaveXML() {
Transformer xformer = null;
m_FileOutputStream = new FileOutputStream(m_strXMLFileName);
m_OutputStreamWriter = new OutputStreamWriter(m_FileOutputStream);
Source source = new DOMSource(m_Document);
Result res = new StreamResult(m_OutputStreamWriter);
xformer = TransformerFactory.newInstance().newTransformer();
xformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
xformer.transform(source, res);
}Java

解决方案 »

  1.   

    看了两次了,XML。每次看完一段时间就忘记了。记得用dom4J比较容易处理。
      

  2.   

    SAXReader reader=new SAXReader();
    Document document=reader.read(new File("xx.xml"));

    Element book=(Element) document.getRootElement().elements("elements").get(1);
    book.element("element").setText("xoo");
    OutputFormat format = OutputFormat.createPrettyPrint();
    format.setEncoding("gb2312");
    XMLWriter writer=new XMLWriter(new OutputStreamWriter(new FileOutputStream("xx.xml"), "gb2312"),format);

    writer.write(document);
    writer.close();
      

  3.   

    xStream可以轻易的将Java对象和xml文档相互转换
      

  4.   


    楼上的都引用的哪些包 也贴出来撒
    dom4j.jar
      

  5.   


    楼上的都引用的哪些包 也贴出来撒
    dom4j.jar哦 谢谢告知啊!我还没用过这个包
      

  6.   

      不会就用 io写入  test.xml中就好了
      

  7.   

    谢谢大家,但是我还是想问如何将修改的XML保存起来,谢谢了