2016-12-30 5 views
2

Я хочу проанализировать json-файл «c: /employeesRecord.json», используя библиотеку org.json.simple. Ниже приведены примеры данных json, каждая запись откладывается следующей строкой в ​​файле.Как разобрать файл JSON без корневого элемента, используя org.json.simple?

{"Employees ":["A ;B ;C ;D ;E ;F"],"JobTitle":"Software Engineer"} 
{"Employees ":["A ;B ;C ;D ;E ;F"],"JobTitle":"Software Engineer"} 
{"Employees ":["A ;B ;C ;D ;E ;F"],"JobTitle":"Software Engineer"} 
... 

Как разобрать такой json-файл без корневого элемента, используя org.json.simple.

+0

Разделите строку/буфер на новую строку ('.split (" \ n ")') и проанализируйте их один за другим? – SOFe

+0

Хотели бы вы показать мне пример? –

+0

Для Android с использованием Gson это разрешено в [link] (http://stackoverflow.com/questions/22334650/convert-json-without-root-element-to-object-using-gson-ksoap2-json-net) –

ответ

2

Поскольку полный файл не является допустимым объектом JSON, вам нужно будет его разборчиво, то есть. прочитайте первую строку, проанализируйте ее с помощью анализатора, сохраните результат и повторите его для следующей строки.

3

Вы можете «настроить» ввод из файла и изменить его в правильном формате JSON

String json = <your json from file> 
json = "[" + json + "]"; 
json = json.replace("\n",","); 
// parse your json, now it should be a valid. 
+0

Да, он может быть преобразован в действительный формат JSON. –

1

Разбираем построчно после spliting по \n.

String[] lines = json.split("\n"); 
List<JsonObject> objects = new ArrayList<>(lines.length); // depending on the JSON library you are using 

for(String line : lines) { 
    objects.add(parseJson(line)); 
} 

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

  • Нет связанных вопросов^_^