2017-03-03 59 views
0

首先,我使用json-simple-2.1.2.jar [Link on GitHub]。使用Java爲JsonArray或JsonObject添加名稱[json-simple.jar庫]

它與json-simple-1.1.1.jar類似,但一些類被更新,其他一些被棄用,但邏輯​​是相同的。


Java代碼 [它產生下文]

//JSON Array [ROOT] 
    JsonArray json = new JsonArray(); 

    //Libraries Array 
    JsonArray libraries = new JsonArray(); 
    for (int i = 0; i < 2; i++) { 
     JsonObject object = new JsonObject(); 
     object.put("name", "library->" + i); 
     libraries.add(object); 
    } 

    //Add to ROOT ARRAY 
    json.add(libraries); 

    //Write to File 
    try (FileWriter file = new FileWriter(jsonFilePath)) { 
     file.write(json.toJson()); 
     file.flush(); 
    } catch (IOException e) { 
     e.printStackTrace();  
    } 

生產json文件:

[ 
    [ 
     { 
      "name": "library->0" 
     }, 
     { 
      "name": "library->1" 
     } 
    ] 
] 

我想要什麼

[ 
    "libraries":[ 
     { 
      "name": "library->0" 
     }, 
     { 
      "name": "library->1" 
     } 
    ] 
] 

正如您所見,JsonArray有一個名稱,例如:"libraries"

我找不到任何方式與我使用的json-simple.jar無關。

幫助很多讚賞:)

+0

你想要的不是有效的JSON。 –

+0

@Srikanth A看看這裏https://www.tutorialspoint.com/json/json_syntax.htm :)讓我知道你爲什麼認爲這是錯的,我是JSON的新手。 – GOXR3PLUS

+0

我在這裏提到確認預期的JSON無效http://jsonlint.com/ –

回答

1

預期的JSON格式預期的問題是不是有效的JSON。它可以在這裏驗證JSONLINT.com

如果將起始和尖括號替換爲花括號,它將是有效的JSON。 PFB代碼構建相同。

import org.json.simple.JsonArray; 
import org.json.simple.JsonObject; 

import java.io.*; 

public class Test { 

    public static void main(String[] args) 
      throws FileNotFoundException { 

     //JSON Array [ROOT] 
     JsonObject finalOutput = new JsonObject(); 

     //Libraries Array 
     JsonArray libraries = new JsonArray(); 
     for (int i = 0; i < 2; i++) { 
      JsonObject object = new JsonObject(); 
      object.put("name", "library->" + i); 
      libraries.add(object); 
     } 

     finalOutput.put("libraries", libraries); 

     //Write to File 
     try (FileWriter file = new FileWriter("C:\\Users\\b21677\\output.json")) { 
      file.write(finalOutput.toJson()); 
      file.flush(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
    } 

} 
+0

謝謝veeeery我的朋友! :) – GOXR3PLUS

+1

任何時候的朋友:)。有關JSON的精確想法,請參閱http://json.org/。 –

+0

我會upvote +2,如果我可以:)另外一個問題..什麼是最好的JSON庫用於Java在你看來? – GOXR3PLUS

相關問題