import java.io.File;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
public class GenerateXML {
public static void main(String[] args) {
try {
// 创建一个新的Document对象
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
// 创建一个空白的XML文档
Document doc = docBuilder.newDocument();
Element rootElement = doc.createElement("company");
doc.appendChild(rootElement);
// 创建子元素并添加到根元素中
Element staff = doc.createElement("staff");
rootElement.appendChild(staff);
// 设置属性
staff.setAttribute("id", "1");
// 添加员工信息
Element firstname = doc.createElement("firstname");
firstname.appendChild(doc.createTextNode("John"));
staff.appendChild(firstname);
Element lastname = doc.createElement("lastname");
lastname.appendChild(doc.createTextNode("Doe"));
staff.appendChild(lastname);
Element nickname = doc.createElement("nickname");
nickname.appendChild(doc.createTextNode("johny"));
staff.appendChild(nickname);
Element salary = doc.createElement("salary");
salary.appendChild(doc.createTextNode("70000"));
staff.appendChild(salary);
// 写入XML文件
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File("C:\\file\\output.xml"));
// 输出到控制台,可以省略
StreamResult consoleResult = new StreamResult(System.out);
// 将DOM树写入文件
transformer.transform(source, result);
transformer.transform(source, consoleResult);
System.out.println("XML 文件生成成功");
} catch (Exception e) {
e.printStackTrace();
}
}
}
创建Document对象:
DocumentBuilderFactory
和DocumentBuilder
来创建一个空白的XML文档。创建根元素:
company
的根元素,并将其添加到文档中。创建子元素:
staff
的子元素,并为其设置属性id
。staff
元素添加子元素firstname
、lastname
、nickname
和salary
,并为这些元素设置文本内容。写入XML文件:
TransformerFactory
和Transformer
将DOM树转换为XML格式,并将其写入指定路径的文件中(例如C:\\file\\output.xml
)。异常处理:
上一篇:java自旋锁
下一篇:java 字符串占位符
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站