将XML转换为特定格式的Java映射的方法是什么?

将XML转换为特定格式的Java映射的方法是什么?,java,xml,parsing,Java,Xml,Parsing,我有以下格式的XML文件。标记和嵌套层次结构的数量是随机的。我是Java新手,所以代码示例将非常受欢迎 <a>0 <b>1 <c>2 <d>3 <e>4</e> </d> <d>5 <e>6</e>

我有以下格式的XML文件。标记和嵌套层次结构的数量是随机的。我是Java新手,所以代码示例将非常受欢迎

<a>0
    <b>1
        <c>2
            <d>3
                <e>4</e>
            </d>
            <d>5
                <e>6</e>
                <e>7</e>
                <e>8</e>
            </d>
            <d>9
                <e>10</e>
            </d>
        </c>
    </b>
    <b>11
        <c>12
            <d>13
                <e>14</e>
            </d>
        </c>
        <c>14
            <d>15
                <e>16</e>
            </d>
        </c>
    </b>
</a>

换句话说,每个
a、b、c、d、e
嵌套组合。

当您访问树(递归)时,您可以收集
堆栈中已看到的值(例如
LinkedList
)。当你到达一片叶子时,打印列表并
pop
堆栈。你应该重新表述你的问题,这样它就不会问“做X的最佳方式”,因为它通常是基于意见的答案。您的问题将被否决,可能会被关闭。我建议使用JAXBContext将XML解析为Map。然后根据地图构建数组。在树中查找深度优先搜索。@Dmitry JAXB在这里不太容易。
0,1,2,3,4
0,1,2,5,6
0,1,2,5,7
0,1,2,5,8
0,1,2,9,10
0,11,12,13,14
0,11,14,15,16