Хорошо, это может ввести в заблуждение.JSONArray теряется при кодировании
Я пытаюсь добавить jsonarray в jsonobject, когда происходит определенная вещь. В настоящее время, файл в формате JSON выглядит немного как этот
{
"sweg":true,
"bans":[
{
"1":[
{
"reason":"Hacking"
}
]
}
],
"kicks":[
{
"1":[
{
"reason":"testing"
}
]
}
]
}
Кроме того, извините, если форматирование файла плохо. Я должен был вручную разместить его.
Следующий запуск, это должно выглядеть немного как
{
"sweg":true,
"bans":[
{
"1":[
{
"reason":"Hacking"
}
]
}
],
"kicks":[
{
"1":[
{
"reason":"testing"
}
],
"2":[
{
"reason":"meow"
}
]
}
]
}
Когда я говорю, должен, я имею в виду то, что задумано. Добавляется JSONArray «2» под «kicks».
Но что получается, это:
{
"sweg":true,
"bans":[
{
"1":[
{
"reason":"Hacking"
}
]
}
],
"kicks":[
{
"2":[
{
"reason":"meow"
}
]
}
]
}
Что, в конечном счете теряется в конце концов, это «1» массив под «ногами»
EDIT: забыл код, вот оно:
public static void main(String[] args) {
JSONParser jsonParser = new JSONParser();
JSONObject jsonObject = new JSONObject();
try {
Object obj = jsonParser.parse(new FileReader("testing.json"));
jsonObject = (JSONObject) obj;
} catch (Exception ex) {
ex.printStackTrace();
}
JSONObject data = new JSONObject();
jsonObject.put("data", data);
JSONArray jsonArray11 = new JSONArray();
jsonObject.put("kicks", jsonArray11);
JSONObject placeHolder2 = new JSONObject();
jsonArray11.add(placeHolder2);
JSONArray kick2 = new JSONArray();
placeHolder2.p(2, kick2);
JSONObject jsonObject1 = new JSONObject();
kick2.add(jsonObject1);
jsonObject1.put("reason", "meow");
try {
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(new File("testing.json"), false));
bufferedWriter.write(jsonObject.toJSONString());
bufferedWriter.flush();
bufferedWriter.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
Из примеров я могу сказать, что вместо того, чтобы добавить его к JSon массива вы добавляете все это в качестве нового объекта JSON. просто отправьте код, чтобы я мог больше помочь. –
Глупо меня, добавлю. –
уже «пинает» в «данных», или вы только что создаете его в этом фрагменте. –