gpt4 book ai didi

java - JSON异常 : no value for XYZ when trying to getString ("XYZ")

转载 作者:太空宇宙 更新时间:2023-11-03 12:54:17 25 4
gpt4 key购买 nike

我正在通过以下步骤在 Android 中进行 JSON 解析:

  1. 使用 HttpPost 对象从网络服务获取 XML 响应。
  2. 将此 XML 转换为 JSON 字符串,然后再转换为 JSON 对象。

现在的问题是有时 XML 响应有空字符串或空标记。

例如:

<data>
<name>Martin Clark</name>
<city>London</city>
<country>XYZ</country> or <country /> <!-- Sometimes it will blank string like this if country is not available -->
<age>27</age>
</data>

解析风格:

jsonObject.getString("country"); // It is working perfect when xml is this : <country>XYZ<country/>

jsonObject.getString("country"); // It is giving Exception key is not found when xml is this : <country />

我不明白为什么解析器不给我空白 XML 对象的空白字符串。

通过深度调试,我发现 XML 到 JSON 转换器不会生成对应于空白 xml 对象的对象。

请帮帮我。

最佳答案

改用optString,捕获异常成本高且不必要。

public String optString (String name)

Added in API level 1 Returns the value mapped by name if it exists, coercing it if necessary. Returns the empty string if no such mapping exists.

public String optString (String name, String fallback)

Added in API level 1 Returns the value mapped by name if it exists, coercing it if necessary. Returns fallback if no such mapping exists.

Documentation

关于java - JSON异常 : no value for XYZ when trying to getString ("XYZ"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23590129/

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