StaxMate:访问纯XML

时间:2012-07-16 13:27:34

标签: stax woodstox staxmate

我遵循(实际上是巨大的)XML来处理:

<root>
  <item attr="hello world">
    <subitem></subitem>
    <subitem></subitem>
    <subitem></subitem>
    <subitem></subitem>
  </item>
  <item attr="hello world">
    <subitem></subitem>
    <subitem></subitem>
    <subitem></subitem>
    <subitem></subitem>
  </item>
  .
  .
  .
</root>

使用StaxMate这很容易。 但是我怎么告诉StaxMate“记录”,例如每个项的简单XML (参见上面的XML)。 所以在处理了一个后,我已经对它进行了处理+我有了字符串

  <item attr="hello world">
    <subitem></subitem>
    <subitem></subitem>
    <subitem></subitem>
    <subitem></subitem>
  </item>

的某个地方。

非常感谢, 费边

1 个答案:

答案 0 :(得分:0)

你需要写条目; XMLStreamWriter2有一个很好的方法XMLStreamWriter2.copyEventFromReader(...),可用于制作令牌的精确副本。

但是你为什么要创建String?直接编写XML片段或处理它们是否有意义?字符串是与XML一起使用的低效事物;占用内存,需要在写出时进行编码,在包含XML时进行解析。所以关于这样做的唯一原因是它们必须作为字符串传递给另一个库。