2015-07-29 2 views
1

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

JsonsFile.json

{"key1":"value11","key2":"value12","key3":"value13"} 
{"key1":"value11","key2":"value12","key3":"value13"} 
{"key1":"value11","key2":"value12","key3":"value13"} 

Это может иметь переменное число Jsons. Как я могу получить список карт из этого файла? Я хотел бы получить доступ к элементам, таким как список (i) («key2»)

ответ

1

Существует несколько библиотек scala, которые обрабатывают json, но я неполный к json4s. это может легко проанализировать json в scala, но прямой результат не является картой. Если ваши json-записи имеют обычный формат (как показывает ваш пример), я бы рекомендовал что-то вроде этого

import org.json4s._ 
import org.json4s.jackson.JsonMethods._ 
import scala.io.Source 

case class Record(key1:String, key2:String, key3:String) 
implicit val format = DefaultFormats 

val records = Source.fromFile("JsonFile.json").getLines.map(parse(_).extract[Record]).toList 
\\ records will be a List[Record], with elements accessible like 
records(1).key2 
Смежные вопросы