Я пытаюсь получить доступ к этому json-файлу: http://www.cloudpricingcalculator.appspot.com/static/data/pricelist.json с Java.JSON Url возвращает что-то еще?
Но когда я его читаю, иногда это дает мне строку JSON (это нормально), и иногда это дает мне что-то еще, и json.simple.parser бросает Unexpected character(<) at position 0
. Основываясь на том, что я читал в stackOverflow, возможно, он возвращает XML вместо JSON. Как мой url «json», как это возможно?
Вот код, я использую:
String baseUrl = "http://www.cloudpricingcalculator.appspot.com/static/data/pricelist.json";
...
URL url = new URL(this.baseUrl);
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
String l;
String json = "";
System.out.println(url);
while((l=in.readLine()) != null){
System.out.println(l);
json+=l;
}
JSONParser parser = new JSONParser();
JSONObject jsonObject = (JSONObject) parser.parse(json);
и журнал <
сопровождается большим количеством квадратов и неизвестных персонажей, как YO [с> е и ошибки Unexpected character() at position 0.
Возможно, он возвращает вас json, но не завершен, в результате чего синтаксис будет испорчен. Это, для меня, звучит более правдоподобно, чем что-то, возвращающее JSON в один момент, а XML - другое. Может быть, неправильно, хотя интересная проблема :) –
Предлагаю вам записать результат, прежде чем пытаться его разобрать - таким образом вы можете видеть, что происходит, а не гадать. Вы также должны использовать 'StringBuilder', а не конкатенацию строк. –
Если я регистрирую результат, он дает мне что-то с неизвестными символами, начинающимися с <и много квадратов – Romain