如何在xml中编写无根列表

时间:2012-10-10 08:06:26

标签: xml xsd

我想使用以下格式编写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编写吗?或者我应该手工编写?

(员工节点是一个没有直接父节点的序列来扭曲没有dateresponseTime元素的所有员工元素的问题

2 个答案:

答案 0 :(得分: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>

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

可以找到完整的源代码here

答案 1 :(得分:0)

我认为你可以用DOM编写它(“employee”的父节点是“root”),但是用“雇员”包装“雇员”节点会更好......