Java之DOM读写XML不求人

想读写XML?想操作DOM?

不需要JDOM、Dom4j……,仅凭JDK就可以搞定!

据说jdk1.4就行了。以下在jdk5中测试通过:

  1. import java.io.File;
  2. import java.io.IOException;
  3. import javax.xml.parsers.DocumentBuilder;
  4. import javax.xml.parsers.DocumentBuilderFactory;
  5. import javax.xml.parsers.ParserConfigurationException;
  6. import javax.xml.transform.Result;
  7. import javax.xml.transform.Source;
  8. import javax.xml.transform.Transformer;
  9. import javax.xml.transform.TransformerException;
  10. import javax.xml.transform.TransformerFactory;
  11. import javax.xml.transform.dom.DOMSource;
  12. import javax.xml.transform.stream.StreamResult;
  13. import org.w3c.dom.Document;
  14. import org.xml.sax.SAXException;
  15. public class Dom2Xml {
  16.     public static void main(String[] args) throws ParserConfigurationException,
  17.             SAXException, IOException, TransformerException {
  18.         // 解析XML
  19.         DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
  20.         DocumentBuilder builder = builderFactory.newDocumentBuilder();
  21.         String uri = "http://blog.csdn.net/CaiKanXP/Rss.aspx";
  22.         Document document = builder.parse(uri);
  23.         // 生成XML
  24.         TransformerFactory transformerFactory = TransformerFactory.newInstance();
  25.         Transformer transformer = transformerFactory.newTransformer();
  26.         Source source = new DOMSource(document);
  27.         String pathname = "dom2xml.xml";
  28.         File file = new File(pathname);
  29.         Result result = new StreamResult(file);
  30.         transformer.transform(source, result);
  31.     }
  32. }

PS:后半部分DOM生成XML看似步骤烦琐,其实关键就在第35行,参数source代表DOM的来源,result代表输出的目标。

 

参考:

DOM 文档操作和 XML 文件互相转换的 Java 实现

你可能感兴趣的:(Java之DOM读写XML不求人)