想读写XML?想操作DOM?
不需要JDOM、Dom4j……,仅凭JDK就可以搞定!
据说jdk1.4就行了。以下在jdk5中测试通过:
- import java.io.File;
- import java.io.IOException;
- import javax.xml.parsers.DocumentBuilder;
- import javax.xml.parsers.DocumentBuilderFactory;
- import javax.xml.parsers.ParserConfigurationException;
- import javax.xml.transform.Result;
- import javax.xml.transform.Source;
- import javax.xml.transform.Transformer;
- import javax.xml.transform.TransformerException;
- import javax.xml.transform.TransformerFactory;
- import javax.xml.transform.dom.DOMSource;
- import javax.xml.transform.stream.StreamResult;
- import org.w3c.dom.Document;
- import org.xml.sax.SAXException;
- public class Dom2Xml {
- public static void main(String[] args) throws ParserConfigurationException,
- SAXException, IOException, TransformerException {
- // 解析XML
- DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
- DocumentBuilder builder = builderFactory.newDocumentBuilder();
- String uri = "http://blog.youkuaiyun.com/CaiKanXP/Rss.aspx";
- Document document = builder.parse(uri);
- // 生成XML
- TransformerFactory transformerFactory = TransformerFactory.newInstance();
- Transformer transformer = transformerFactory.newTransformer();
- Source source = new DOMSource(document);
- String pathname = "dom2xml.xml";
- File file = new File(pathname);
- Result result = new StreamResult(file);
- transformer.transform(source, result);
- }
- }
PS:后半部分DOM生成XML看似步骤烦琐,其实关键就在第35行,参数source代表DOM的来源,result代表输出的目标。
参考: