如何在Java中将xml块解析为字符串

时间:2015-03-20 16:36:23

标签: java xml jaxb

我的xml看起来像这样:

<rootElement>
 <title> randmonString </title>
 <subElement1> 
    <someInfo> info </someInfo>
    <subElemntTrash> trash </subElementTrash>
    <someInfo1> info1 </someInfo1>
 </subElement1>
 <trash>
  <subtrash> trash </subtrash>
 </trash>
 <date> 19.03.15 </date>
</rootElement>

我只需要提取title,一些/subElement1/subInfo/subElement1/subInfo1date,其余部分应自动存储在某处,但不包含那些已经提取过的元素。我也应该有可能将它编组回原来的xml。 如果可以使用注释映射完成它将会很棒。

有人可以给我正确的搜索方向吗?

1 个答案:

答案 0 :(得分:0)

您正在询问解析,但随后您需要数据提取,数据转换以及最终以某种未定义的形式存储。非常广泛的问题,许多可能的aporaches。

您可以使用DOM,SAX,StAX在Java中解析XML。

您可以使用XPath来提取有趣的信息,但它不会将您的文档划分为有趣的位和“休息”。

您可以定义XSLT模板,以启动java Transformer,以便将输入文档拆分为有趣的和“其余”部分。

您可以使用JAXB将xml映射到java模型(使用您喜欢的注释映射),然后您可以构建包含您的有趣和“其余”部分的另一个表示。然后,您可以将两个表示保存到不同的xml。