<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # Java XML 轉換為字符串 – 將 XML 對象寫入文件的示例 > 原文: [https://howtodoinjava.com/xml/xml-to-string-write-xml-file/](https://howtodoinjava.com/xml/xml-to-string-write-xml-file/) **Java 示例讀取 XML 文件**,**打印 XML 字符串**進行控制臺,或**將 XML 寫入文件**。 ## 1)將 XML 轉換為字符串 要將 XML 對象(即[`org.w3c.dom.Document`](https://docs.oracle.com/javase/10/docs/api/org/w3c/dom/Document.html))轉換為字符串,您需要以下類: * [`javax.xml.transform.Transformer`](https://docs.oracle.com/javase/10/docs/api/javax/xml/transform/Transformer.html):此類的實例可以使用其`transform()`方法將源樹轉換為結果樹。 * [`javax.xml.transform.TransformerFactory`](https://docs.oracle.com/javase/10/docs/api/javax/xml/transform/TransformerFactory.html):創建`Transformer`實例的工廠。 * [`javax.xml.transform.dom.DOMSource`](https://docs.oracle.com/javase/10/docs/api/javax/xml/transform/dom/DOMSource.html):文檔樹(DOM)樹形式的源樹。 * [`javax.xml.transform.stream.StreamResult`](https://docs.oracle.com/javase/10/docs/api/javax/xml/transform/dom/DOMSource.html):轉換結果樹的持有人,可以是 XML,純文本,HTML 或其他某種形式的標記。 #### 1.1)將 XML 打印到控制臺或日志文件 ```java private static void writeXmlDocumentToXmlFile(Document xmlDocument) { TransformerFactory tf = TransformerFactory.newInstance(); Transformer transformer; try { transformer = tf.newTransformer(); // Uncomment if you do not require XML declaration // transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes"); //A character stream that collects its output in a string buffer, //which can then be used to construct a string. StringWriter writer = new StringWriter(); //transform document to string transformer.transform(new DOMSource(xmlDocument), new StreamResult(writer)); String xmlString = writer.getBuffer().toString(); System.out.println(xmlString); //Print to console or logs } catch (TransformerException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } } ``` #### 1.2)將 XML 寫入文件 ```java private static void writeXmlDocumentToXmlFile(Document xmlDocument, String fileName) { TransformerFactory tf = TransformerFactory.newInstance(); Transformer transformer; try { transformer = tf.newTransformer(); //Uncomment if you do not require XML declaration //transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes"); //Write XML to file FileOutputStream outStream = new FileOutputStream(new File(fileName)); transformer.transform(new DOMSource(xmlDocument), new StreamResult(outStream)); } catch (TransformerException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } } ``` ## 2)從文件讀取 XML 將 XML 從`.xml`文件讀取到`Document`對象的示例。 ```java private static Document convertXMLFileToXMLDocument(String filePath) { //Parser that produces DOM object trees from XML content DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); //API to obtain DOM Document instance DocumentBuilder builder = null; try { //Create DocumentBuilder with default configuration builder = factory.newDocumentBuilder(); //Parse the content to Document object Document xmlDocument = builder.parse(new File(filePath)); return xmlDocument; } catch (Exception e) { e.printStackTrace(); } return null; } ``` ## 3)完整的例子 用于運行示例的完整代碼。 ```java package com.howtodoinjava.demo; import java.io.File; import java.io.FileOutputStream; import java.io.StringWriter; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; 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; public class XmlToStringExample { public static void main(String[] args) { final String xmlFilePath = "employees.xml"; //Use method to convert XML string content to XML Document object Document xmlDocument = convertXMLFileToXMLDocument( xmlFilePath ); //Write to file or print XML writeXmlDocumentToXmlFile(xmlDocument, "newEmployees.xml"); } private static Document convertXMLFileToXMLDocument(String filePath) { //Parser that produces DOM object trees from XML content DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); //API to obtain DOM Document instance DocumentBuilder builder = null; try { //Create DocumentBuilder with default configuration builder = factory.newDocumentBuilder(); //Parse the content to Document object Document xmlDocument = builder.parse(new File(filePath)); return xmlDocument; } catch (Exception e) { e.printStackTrace(); } return null; } private static void writeXmlDocumentToXmlFile(Document xmlDocument, String fileName) { TransformerFactory tf = TransformerFactory.newInstance(); Transformer transformer; try { transformer = tf.newTransformer(); // Uncomment if you do not require XML declaration // transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes"); //Print XML or Logs or Console StringWriter writer = new StringWriter(); transformer.transform(new DOMSource(xmlDocument), new StreamResult(writer)); String xmlString = writer.getBuffer().toString(); System.out.println(xmlString); //Write XML to file FileOutputStream outStream = new FileOutputStream(new File(fileName)); transformer.transform(new DOMSource(xmlDocument), new StreamResult(outStream)); } catch (TransformerException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } } } ``` 輸入文件。 ```java <employees> <employee id="101"> <name>Lokesh Gupta</name> <title>Author</title> </employee> <employee id="102"> <name>Brian Lara</name> <title>Cricketer</title> </employee> </employees> ``` 輸出文件。 ```java <?xml version="1.0" encoding="UTF-8" standalone="no"?> <employees> <employee id="101"> <name>Lokesh Gupta</name> <title>Author</title> </employee> <employee id="102"> <name>Brian Lara</name> <title>Cricketer</title> </employee> </employees> ``` 將我的問題放在評論部分。 學習愉快!
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看