2015-01-09 112 views
0

我有多个JSON对象存储在一个文件中,以新行字符分隔(但一个对象可以跨越多行) - 这是来自MongoDB shell的输出。解析一个文件中的多个JSON对象

使用GsonJava解析它们(使它们在数组或集合中)的最简单方法是什么?

+0

有迹象表明,可以通过保持输入流处理这个问题,解析器当可能有多于一个时,它位于先前的对象/数组的末尾。但是Java有20-30个不同的JSON工具包,所以我不能说哪个具有这个特性。 – 2015-01-09 18:55:41

回答

1

另一种可能性是用杰克逊和其ObjectReader.readValues()方法:

public <T> Iterator<T> readStream(final InputStream _in) throws IOException { 
    ObjectMapper mapper = new ObjectMapper(); 
    // configure object mappings 
    ... 
    // and then 
    return mapper.reader(MapObject.class).readValues(_in); 
} 

作品上有足够大的(几个G)JSON数据文件不错