0

我想验证从服务器获取的一个字符串作为响应。响应必须是有效的 JSON 字符串。有时,当用户通过需要身份验证的网络或发生 PHP 错误时,响应不是有效的 JSON。

Android 解析器 JSONTokener 在解析字符串之前不会验证字符串,因此在这种情况下,应用程序会抛出 JSONException 并强制关闭。

我发现了异常,但应用程序仍在关闭。

我的问题是:是否有任何用于对象和字符串的 JSON 验证器来首先验证它们并避免在格式无效时对其进行解析?

另一个解决方案是检查 string[0] 是否有 "{" 或 "[" 但这个解决方案并不优雅并且会遗漏很多错误。所以我想使用一个完整的 JSON 验证器。

提前致谢。

4

1 回答 1

1

你在用 GSON 吗?

如果是这样,则库在解析格式错误的 JSON 字符串时引发 JsonSyntaxException

如果您使用的是 android.util.JsonReader,JsonReader 会抛出 MalformedJsonException

于 2012-09-20T08:13:35.937 回答