Element documentElement = document.getDocumentElement();
     documentElement.setAttribute("TestAttribute","Testing");

解决方案 »

  1.   

    DocumentBuilderFactory dFactory = DocumentBuilderFactory.newInstance();
    DocumentBuilder dBuilder = dFactory.newDocumentBuilder();
    Document document = dBuilder.parse(new FileInputStream("c:/test.xml"));
    Element documentElement = document.getDocumentElement();
    documentElement.setAttribute("TestAttribute","Testing");TransformerFactory tFactory = TransformerFactory.newInstance();
    Transformer transformer = tFactory.newTransformer();
    transformer.setOutputProperty(OutputKeys.ENCODING,"gb2312");
    StreamResult result = new StreamResult(new File("c:/test.xml"));
    transformer.transform(new DOMSource(document),result);
      

  2.   

    原因很简单,你改变的只是内存中的值,并没有把它写到硬盘去的话当然不会改变。
    我给你一个写硬盘的函数:
    public void writeXml(Document content)
      {
        try
        {
          OutputFormat format = new OutputFormat(); 
          format.setEncoding("GB2312"); 
          FileWriter writer = new FileWriter("temp.xml",false); 
          XMLSerializer serializer = new XMLSerializer(writer, format); 
          serializer.serialize(content);
          writer.flush();
          writer.close(); 
        }
        catch(IOException e)
        {  System.out.print("Error: " + e);
           System.exit(1);
        }
      }
    当然首先要求temp.xml是一个xml文件
      

  3.   

    to keepye:OutputFormat  是什么类,我怎么查不到它