在 xstream 中反序列化旧版 XML 结构

发布于 2024-07-08 13:36:09 字数 363 浏览 9 评论 0原文

我正在尝试反序列化一个如下所示的 xml 结构:

<somecontainer>
    <key1>Value1</key1>
    <key1>Value2</key1>
    <key2>Value3</key2>
    <key2>Value4</key2>
</somecontainer>

我基本上可以选择要反序列化到哪种类型的 if 元素,也许是像对列表之类的东西。 这里的本质是元素名称是键。

不,我无法更改 xml 结构。 有人知道如何使用 xstream 执行此操作吗?

I'm trying to deserialize an xml structure that looks like this:

<somecontainer>
    <key1>Value1</key1>
    <key1>Value2</key1>
    <key2>Value3</key2>
    <key2>Value4</key2>
</somecontainer>

I can basically choose what kind if element to deserialize to, maybe something like a List of Pair or something. The essence here is that the element names are the keys.

And no, I cannot change the xml structure. Anyone know how to do this with xstream ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

凉宸 2024-07-15 13:36:09

我发现这种情况需要一个自定义序列化器,没有办法解决。

同样

<node attr1="xxx">value1</node>

也需要一个自定义序列化器。

I have found that a custom serializer is needed for this case, no way around it.

Similarly

<node attr1="xxx">value1</node>

also needs a custom serializer.

流星番茄 2024-07-15 13:36:09

您还可以考虑在反序列化之前将文档进行 XSL 转换为规范化形式。 这将消除对自定义序列化器的需要。

我想权衡是维护自定义序列化程序或 XSL 转换步骤是否更容易?

You might also consider doing an XSL transformation of the document to a normalized form before deserializing it. That would obviate the need for a custom serializer.

I guess the trade off is if it is easier to maintain a custom serializer or an XSL transformation step?

渡你暖光 2024-07-15 13:36:09

我有一段时间没有使用 XStream,但 隐式集合 可能会使用你想要什么。

I have not used XStream in some time, but implicit collections probably does what you want.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文