У меня есть файл JSON, который я хочу прочитать, перебрать его элементы, а затем удалить указанный c элемент (UserID
) во всех объектах.
вот мой Json file:
[
{
"UserID": 1,
"UserName": "rooter",
"Password": "12345",
"Country": "UK",
"Email": "sac@gmail.com"
},
{
"UserID": 2,
"UserName": "binu",
"Password": "123",
"Country": "uk",
"Email": "Binu@gmail.com"
},
{
"UserID": 3,
"UserName": "cal",
"Password": "123",
"Country": "uk",
"Email": "cal@gmail.com"
},
{
"UserID": 4,
"UserName": "nera",
"Password": "1234",
"Country": "uk",
"Email": "nera@gmail.com"
}
]
Я также использовал org.json.simple
Library для чтения файла, анализа его элементов и удаления одного из этих элементов, и вот код, который я использовал:
public static void main(String[] args) throws Exception {
JSONParser jsonparser = new JSONParser();
try( FileReader reader = new FileReader("test.json"))
{
Object obj = jsonparser.parse(reader);
ObjectMapper mapper = new ObjectMapper();
JSONArray List = (JSONArray) obj;
JsonNode root = mapper.readTree(reader);
for (JsonNode jsonNode : root) {
if (jsonNode instanceof ObjectNode) {
ObjectNode o = (ObjectNode) jsonNode;
o.remove("UserID");
}
}
System.out.println(List);
}
catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ParseException e) {
e.printStackTrace();
}
}
проблема в том, что он удаляет элемент, когда я его анализирую, но не изменяется в файле, однако я хочу удалить его из файла и сохранить обратно, вы знаете, как это сделать.