0

我想使用以下格式编写一个 xml 文件:

<root>
    <date> 9:51 AM 10/10/2012 </date>
    <responseTime> 1.20</responseTime>
    <employee>
        <name> Mohammad</name>
    </employee>
    <employee>
        <name> Ali</name>
    </employee>
    <employee>
        <name> Mostafa</name>
    </employee>
    <employee>
        <name> Mahmoud</name>
    </employee>
</root>

我可以使用 DOM 编写它吗?还是我应该手写?

(问题在于员工节点是一个没有直接父节点的序列来扭曲所有没有date和元素的员工responseTime元素)

4

2 回答 2

1

我看不出用 DOM 做这件事有什么问题。

代码:

public static void main(String[] args) throws ParserConfigurationException, IOException, TransformerException
{
    DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
    DocumentBuilder documentBuilder = builderFactory.newDocumentBuilder();
    Document document = documentBuilder.newDocument();
    Element root = document.createElement("root");
    document.appendChild(root);

    Element emp1 = document.createElement("employee");
    Element emp1name = document.createElement("name");
    emp1name.setTextContent("Mohammad");
    emp1.appendChild(emp1name);
    Element emp2 = document.createElement("employee");
    Element emp2name = document.createElement("name");
    emp2name.setTextContent("Ali");
    emp2.appendChild(emp2name);

    root.appendChild(emp1);
    root.appendChild(emp2);

    printDocument(document, System.out);
}

输出:

<root>
    <employee>
        <name>Mohammad</name>
    </employee>
    <employee>
        <name>Ali</name>
    </employee>
</root>

printDocument您可以在此SO Answer中查看源代码。

完整的源代码可以在这里找到。

于 2012-10-10T08:21:50.073 回答
0

我认为您可以使用 DOM 编写它(“employee”的父节点是“root”),但是例如用“employees”包装“employee”节点会更好......

于 2012-10-10T08:22:21.400 回答