So erstellen Sie eine JSON-Datei in einem bestimmten format in Java
Ich bin versucht zu schreiben, eine JSON-Datei, die mit Java in einem bestimmten format. Zum Beispiel: nehmen wir an, ich mag, um die JSON-Datei im folgenden format geschrieben:
{
"resource":[{"name":"Node1"}],
"literals":[{"literal":"A", "B", "C", "D"}]
}
Wie Sie bemerken können, in resource
möchte ich schreiben Streicher in es und in literals
ich gerne eine arraylist von strings. Hier sind meine Java-codes:
public void writeJSON() {
public ArrayList<String> literals = new ArrayList<String>();
literals.add("A");
literals.add("B");
literals.add("C");
literals.add("D");
JSONObject jsonObject = new JSONObject();
JSONArray jsonArray = new JSONArray();
jsonObject.put("name", resources.getResource());
resources.setLiterals(literals);
jsonObject.put("literal", resources.getLiterals());
try {
FileWriter file = new FileWriter("/Users/Documents/sample.json");
file.write(jsonObject.toJSONString());
file.flush();
file.close();
} catch (IOException e) {
e.printStackTrace();
}
}
Hier ist die Java Datei, wo ich die set-und get-Werte für die JSON-Datei:
public class Resources {
String resource;
ArrayList<String> literals;
public Resources()
{
}
public void setResource(String resource)
{
this.resource = resource;
}
public String getResource()
{
return resource;
}
public void setLiterals(ArrayList<String> literals)
{
this.literals = literals;
}
public ArrayList<String> getLiterals()
{
return literals;
}
}
Könnte jemand bitte helfen Sie mir, wie man erstellen Sie eine JSON-Datei basierend auf dem format. Ihre Hilfe würde sehr geschätzt werden.
Sie offensichtlich bereits tun, etwas zu erzeugen versuchen JSON. Wie tut Sie es nicht tun, was Sie wollen?
Generiert ich, die Datei aber leider nicht das format, das ich will. Es zeigt nicht mich, "Ressource" und "Literale". Keine Ahnung, wie zu generieren, die bestimmten format?
Sie kann nicht generiert werden "das Besondere format" JSON.
{"source":"A", "B", "C", "D"}
dies ist kein gültiges Json.Generiert ich, die Datei aber leider nicht das format, das ich will. Es zeigt nicht mich, "Ressource" und "Literale". Keine Ahnung, wie zu generieren, die bestimmten format?
Sie kann nicht generiert werden "das Besondere format" JSON.
InformationsquelleAutor user2864315 | 2013-11-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können beginnen, dass
Json
Sie versuchen, zu erstellen ist ungültig.Dies ist, was Sie haben:
Wie Sie sehen können
resource
sieht OK - d.h. es ist ein Objekt, das enthältList
von Objekten.Auf der anderen Seite
literals
ist ein Objekt enthalten, einList
was? da nicht{"source":"A", "B", "C", "D"}
noch{"source":"E", "F", "G", "H"}
ist eine gültigeJson
.Abbildung aus dieser ersten, dann aktualisieren Sie Ihre
java
code und wir gehen von dort aus.Wenn diese:
{"resource":[{"name":"Node1"}],"literals":[{"literal":["A","B","C","D"]}]}
wünschenswert ist, dann können Sie erreichen, dass in der folgenden Weise(ich benutze Gson):Noch
"literals":[{"literal":"A", "B", "C", "D"}]
ist nicht gültig. Ich glaube, Sie wollte, dies zu tun:"literals":[{"literal":["A", "B", "C", "D"]}]
- d.h.literals
ist ein Objekt, enthalten einzelne Mitglied namensliteral
und es ist einList
. Ist, dass die Annahme richtig?Ich danke Ihnen sehr, Sir, für Ihre Unterstützung. Es ist sehr viel geschätzt. Eigentlich habe ich eine große Menge von Daten. Ich werde versuchen, zu verwalten es jetzt mit deiner Lösung. Noch einmal, ich danke Ihnen sehr.
InformationsquelleAutor Алексей