gpt4 book ai didi

java - 从返回 xml 的请求中获取单个值的最佳方法?

转载 作者:行者123 更新时间:2023-12-01 13:32:20 26 4
gpt4 key购买 nike

我有一个 Android 应用程序,并且希望从 xml 结果集中获取特定值,该值是通过对 api 的请求获取的。我将发出多个请求,这是唯一返回 xml 的请求。

这是 xml 结果:

https://mcxnow.com/orders?cur=WDC

如何在 Android 的 Java 中尽可能高效地以字符串形式获取“Doc > History > O[0] > p”的值?

我已经研究过 Sax XML 解析器,但这似乎有点矫枉过正。有什么我应该使用的真正轻量级的东西吗?我应该使用什么,如何才能只获得 1 值?

最佳答案

I've looked at Sax XML parser but that seems like overkill. Is there anything really lightweight I should use? What should I use, and how would I go about getting only the 1 value?

我打算建议您使用 SAX 解析器!

<小时/>

问题在于,在性能方面唯一明显更加“轻量级”的是模式匹配;即基本上忽略 XML 语法/句法,并使用正则表达式或等效项来找出您想要的数据。

使用模式匹配而不是正确的 XML 解析的问题是您的代码可能很脆弱:

  • 如果隐含的 XML 架构发生更改,它可能会以不可预测/不可检测的方式发生中断。

  • 由于 XML 格式化方式的变化,它很容易以不可预测/不可检测的方式被破坏;例如不重要的空白、意外顺序的属性等等。

  • 如果值以合法但意外的方式编码,则可能会以不可预测/不可检测的方式被破坏。

如果您设计正则表达式来处理这些事情,它们就会变得更加复杂,模式匹配性能也会下降。

关于java - 从返回 xml 的请求中获取单个值的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21492986/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com