我们有一些代码,我们将一个 JSON 文件读入一个字符串,然后使用Json-lib
它来处理它,如下所示:
// ...
JSONObject jsonObj = (JSONObject) JSONSerializer.toJSON(jsonStr);
// ...
我们现在有一个文件实际上是一个 JSONArray 的情况(即以 开头[
和结尾]
)。该文件通过了所有 JSON 验证测试,但我们的代码引发了以下异常:
java.lang.ClassCastException: net.sf.json.JSONArray cannot be cast to net.sf.json.JSONObject
我们可以通过以下 hack 来解决这个问题:
// ...
JSONObject jsonObj = (JSONObject) JSONSerializer.toJSON("{" + jsonStr + "}");
// ...
问题:有没有一种方法来处理文件,而不诉诸黑客?