Hallo,
ich versuche aktuell mittels GSON *.json Files zu schreiben und zu lesen. Das Schreiben hat schon funktioniert.
Das test.json File findet Ihr unten. Das Lesen macht mir aktuell ein paar Probleme. Bei dem Parsen/Lesen in ein JSON Element oder Object lande ich immer in einer Exception. Das test.json file habe ich erfolgreich validieren lassen durch eine Website. Am Ende würde ich am Anfang erst einmal Node.Name parsen und in ein Liste speichern können.
ich versuche aktuell mittels GSON *.json Files zu schreiben und zu lesen. Das Schreiben hat schon funktioniert.
Das test.json File findet Ihr unten. Das Lesen macht mir aktuell ein paar Probleme. Bei dem Parsen/Lesen in ein JSON Element oder Object lande ich immer in einer Exception. Das test.json file habe ich erfolgreich validieren lassen durch eine Website. Am Ende würde ich am Anfang erst einmal Node.Name parsen und in ein Liste speichern können.
Code:
public static List<String> getNodes( java.io.File f) throws FileNotFoundException
{
List<String> SearchList = new ArrayList<>();
try {
// Gson gson = new Gson();
// Creates a FileWriter
FileReader file = new FileReader(f.getPath());
// Creates a BufferedWriter
BufferedReader input = new BufferedReader(file);
StringBuilder sb = new StringBuilder();
String line;
while ((line = input.readLine()) != null) {
sb.append(line);
}
String json = sb.toString();
System.out.println(json);
JsonElement jsonElement = (JsonElement) new JSONParser().parse(json);
JsonObject jsonObject = jsonElement.getAsJsonObject();
// JsonObject JsonObejct = new Gson().fromJson(json, JsonObject.class);
jsonObject = jsonObject.getAsJsonObject("Node.Name");
// ArrayList arrName = new Gson().fromJson(JsonArray, ArrayList.class);
//ArrayList jsonObjList = gson.fromJson(input, ArrayList.class);
// print user object
System.out.println(jsonObject);
// Closes the writer
input.close();
}
catch (Exception e) {
e.getStackTrace();
}
return SearchList;
}
Java:
[{"Node0":"Properties[ Node.Name = Papier, Node.Visible = false ]","Node1":"Properties[ Node.Name = Qualität, Node.Visible = false ]","Node2":"Properties[ Node.Name = Layout, Node.Visible = false ]"}]