2015-04-25 3 views
0

java.lang.ClassCastException: java.lang.String не может быть приведен к net.minidev.json.JSONObjectjava.lang.ClassCastException: java.lang.String не может быть приведен к net.minidev.json.JSONObject

JSONParser jsonParser = new JSONParser(); 
    Object obj = jsonParser.parse(new FileReader(location.getAbsolutePath())); 
    JSONObject jobj = (JSONObject) obj; 
+0

это может быть связано с вашей банкой или зависимостью. Я думаю, что ваш импорт должен быть таким, как импорт com.google.gson.Gson; после добавления банки. – Anptk

ответ

1

Как выглядит ваш входной файл?

Если это содержание что-то вроде:

"some string" 

тогда вызова jsonParser.parse() возвратит java.lang.String вызывая последующий провал броска к JSONObject.

+0

Содержимое - это файл с https://s3.amazonaws.com/Minecraft.Download/indexes/1.7.4.json –

+0

Я просто попробовал следующий код в файле, который вы связали: JSONParser jsonParser = new JSONParser(); Объект obj = jsonParser.parse (новый FileReader ("1.7.4.json")); JSONObject jobj = (JSONObject) obj; System.out.println (((JSONObject) jobj.get ("objects")). Get ("icons/icon_16x16.png")); и я получил следующий результат: {"size": 3665, "hash": "bdf48ef6b5d0d23bbb02e17d04865216179f510a"}. вы уверены, что по-прежнему видите это исключение класса? –

Смежные вопросы