2016-12-30 12 views
2

org.json.simpleライブラリを使用してjsonファイル "c:/employeesRecord.json"を解析したいと思います。以下はサンプルのjsonデータです。各レコードはファイルの次の行で検索されます。org.json.simpleを使用してルート要素なしでJSONファイルを解析する方法は?

{"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"} 
... 

org.json.simpleを使用して、このようなjsonファイルをルート要素なしで解析する方法。

+0

文字列/バッファを改行( '.split(" \ n ")')で分割し、それらを1つずつ解析しますか? – SOFe

+0

私に例を示したいですか? –

+0

Gsonを使用しているAndroidの場合、[link](http://stackoverflow.com/questions/22334650/convert-json-without-root-element-to-object-using-gson-ksoap2-json-net)で解決されます –

答えて

2

完全なファイルは有効なJSONオブジェクトではないため、行単位で解析する必要があります。最初の行を読み込み、パーサを使って解析し、結果を保存して次の行を繰り返します。

3

あなたはファイルからの入力を「微調整」し、それを\nによってspliting後行ずつ解析し、有効な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

それを変更することができます。

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)); 
} 
関連する問題