JSONObject Reihenfolge der Werte?

jarobi

Mitglied
Ich hab grad das Problem wenn ich einen Json String vom Server bekomme und ich ihn dann einem JSONObject übergebe und auslese, eine völlig andere Reihenfolge habe. Ich weiss nicht ob dass an mir oder an der internen Implementierung solch eines Objektes liegt.

Zur Veranschaulichung:


So bekomm ich das vom Server:
{"Export":[
{"name":"Testdaten","data1":10,"data2":12,"data3":14,"data4":8,"data5":13},
{"name":"Testblabla","data1":7,"data2":8,"data3":16,"data4":10,"data5":3},
........
]
}
und so sieht es auch wenn ich es in ein JSONObject einlese(Teilauschnitt)
{"data1":10,"name":"Testdateb","data4":8,"data5":13,"data2":12,"data3":14}


Java:
		JSONObject oJSONObject;
		try {  
                        //jstring = JsonString vom Server. 
			oJSONObject = new JSONObject(jstring);
                        //Hier hole ich mir den Array -> Export[..]
			JSONArray recs = oJSONObject.getJSONArray("Export");

			for (int i = 0; i < recs.length(); ++i) {
                                // hier greife ich auf die einzelne Json-Datensätze zu. Sind hier aber schon in
                                // der falschen reihenfolge
				JSONObject rec = recs.getJSONObject(i);
				// das aber hier ist eigentlich egal.
				String[] nametest = rec.getNames(rec);
					 for (int a = 0; a < nametest.length; a++) {
					if (!(nametest[a].toString().equalsIgnoreCase("name"))) {
						System.out.println(rec.getString(nametest[a].toString()));
					}
				}

			}
 

HoaX

Top Contributor
Liegt mit Sicherheit an JSONObject. Was du da hast ist ja eine Map, und wennn JSONObject z.B. HashMap intern verwendet, dann ist keine feste Reihenfolge mehr gegeben.
 
B

BoBoHelp

Gast
Hallo,
ich weiß es nicht was für eine Version von JSON (jar) du nutzt, bei mir habe ich solche Probleme nicht - hier ein Beispiel:
Java:
String jsonTxt = "{Export:[{'name':'Testdaten','data1':10,'data2':12,'data3':14,'data4':8,'data5':13},{'name':'Testblabla','data1':7,'data2':8,'data3':16,'data4':10,'data5':3}]}";

        try{
            JSONObject json = (JSONObject) JSONSerializer.toJSON( jsonTxt );
            JSONArray jsonArray = json.getJSONArray("Export");
            for(int i=0; i<jsonArray.size(); i++){
                JSONObject object = (JSONObject)jsonArray.get(i);
                System.out.println(object);
                JSONArray names = object.names();
                for(int j=0; j<names.size();j++){
                    System.out.println(names.get(j));
                }

            }
        }catch (Exception e){
            e.printStackTrace();
        }

Result:
{"name":"Testdaten","data1":10,"data2":12,"data3":14,"data4":8,"data5":13}
name
data1
data2
data3
data4
data5
{"name":"Testblabla","data1":7,"data2":8,"data3":16,"data4":10,"data5":3}
name
data1
data2
data3
data4
data5
 

gladiator09

Bekanntes Mitglied
Hi,

hab leider das gleiche Problem.

Welche JSON-lib verwendest du? org.json?

Ich hab nichdt mal einen JSONSerializer. Auf jeden Fall verwendet JSONObject intern eine HashMap. Gibt es eine Möglichkeit das auf eine LinkedHashMap umzustellen? Wahrscheinlich nicht oder?

LG,
Alex
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Neues Objekt aus List<JsonObject> mit Stream Allgemeine Java-Themen 4
X JSONObject auslesen und in HashMap hinterlegen Allgemeine Java-Themen 16
JavaWolf165 JsonObject in HashMap umwandeln Allgemeine Java-Themen 16
S Reihenfolge umkehren Allgemeine Java-Themen 6
E Fibonacci Reihenfolge dividieren Allgemeine Java-Themen 3
M Methoden werden in falscher Reihenfolge bearbeitet Allgemeine Java-Themen 10
T datei auslesen ind der richtigen reihenfolge Allgemeine Java-Themen 2
J Beanshell Classpath Reihenfolge Allgemeine Java-Themen 2
TheWhiteShadow Listener Reihenfolge Allgemeine Java-Themen 4
S Methoden Class.forName() >> Methoden - Reihenfolge Allgemeine Java-Themen 5
turmaline Reihenfolge von Parametern Allgemeine Java-Themen 7
F Multidimensionales Array ohne linare Reihenfolge! Allgemeine Java-Themen 8
C Reihenfolge einer SortedMap/TreeMap umkehren Allgemeine Java-Themen 3
N ArrayList nach Reihenfolge prüfen Allgemeine Java-Themen 2
C Netbeans - Aufruf-Reihenfolge Allgemeine Java-Themen 5
G Komische Reihenfolge mit dynamischem Proxy Allgemeine Java-Themen 9
Daniel_L Map/HashMap - Reihenfolge von Einträgen Allgemeine Java-Themen 4
L HashMap Key Reihenfolge umkehren Allgemeine Java-Themen 8
T Thread Reihenfolge Allgemeine Java-Themen 11
G synchronized-Sclüsselwort: welche Reihenfolge zum Betreten? Allgemeine Java-Themen 6
V JFilechooser, mehrere Datein selektieren und Reihenfolge? Allgemeine Java-Themen 2
T HashMap#values Reihenfolge Allgemeine Java-Themen 13
G Buchstaben in umkekehrter Reihenfolge ausgeben Allgemeine Java-Themen 4
E Reihenfolge der Initialisierungen eines Objekts Allgemeine Java-Themen 17
V Reihenfolge ? Allgemeine Java-Themen 26
E Reihenfolge der Elemente einer ArrayList? Allgemeine Java-Themen 4
G ständig Iterator über Kollektion --> falsche Reihenfolge? Allgemeine Java-Themen 2
G Map oder List mit festgelegter Reihenfolge Allgemeine Java-Themen 4
A Reihenfolge bei KeyListner Allgemeine Java-Themen 3
T HashMap, sortiert nach Reihenfolge Allgemeine Java-Themen 7
O Werte einer Generic LinkedList zusammenrechenen Allgemeine Java-Themen 14
C In DefaultTableModel nachträglich Werte einfügen Allgemeine Java-Themen 2
rosima26 Unterschiedliche Werte bei return/print Allgemeine Java-Themen 12
berserkerdq2 Kann man in IJVM maximal 3 Werte im Stack haben? Allgemeine Java-Themen 3
OnDemand RegEx /compilebekomme nicht die erwarteten Werte Allgemeine Java-Themen 9
MiMa Werte in liste speichern? Allgemeine Java-Themen 3
Drachenbauer Wie kann ich einer existierenden Enum von außerhalb veränderte Werte zuweisen? Allgemeine Java-Themen 5
Arif Math.cos liefert komische Werte Allgemeine Java-Themen 8
X Größten Werte in meinem Array löschen? Allgemeine Java-Themen 16
D Erste Schritte Im Array Werte tauschen Allgemeine Java-Themen 5
J int Werte in einer anderen Klasse in Arrays speichern Allgemeine Java-Themen 3
B Übernommene Variablen(werte) aus der Main-Klasse ändern? Allgemeine Java-Themen 9
Henrithebegiinerofjava Erste Schritte Werte in Eingabefelder einlesen und wiederholen lassen. Allgemeine Java-Themen 3
I Java: public final Werte: Gute oder schlechte Praxis? Allgemeine Java-Themen 6
S Algorithmus welcher True-Werte in einem Array findet und auswertet. Allgemeine Java-Themen 5
P Static Variable -> unterschiedliche Werte? Allgemeine Java-Themen 1
J Swing UIManager Werte Allgemeine Java-Themen 6
4 Java 2 ArrayListen Werte herauslesen/übernehmen Allgemeine Java-Themen 4
F Enum-werte als Methoden-Parameter übergeben Allgemeine Java-Themen 6
KeVoZ_ int Werte in einen String fassen Allgemeine Java-Themen 4
N Werte aus Hashmap auslesen und übertragen Allgemeine Java-Themen 8
2 mehrere Json Werte Parsen Allgemeine Java-Themen 3
R jTable, nur Werte zwischen 2 Double values ausgeben Allgemeine Java-Themen 3
B Übergebene Werte in Gerätedatei schreiben Allgemeine Java-Themen 2
M Exceltabelle in Java erstellen und Werte einlesen Allgemeine Java-Themen 32
N Werte aus Arrays auslesen funktioniert nicht Allgemeine Java-Themen 5
R Int werte vergleichen und Anzahl Paare ausgeben Allgemeine Java-Themen 4
O Klassen Programm in Klassen unterteilt, werte werden nicht mehr übernommen Allgemeine Java-Themen 3
R kann man irgendwie mit Arrays mit Eingabefenstern und Schleifen Werte abklappern? Allgemeine Java-Themen 2
L Windows CMD werte Parsen. Allgemeine Java-Themen 2
M Werte aus DB in Liste speichern ohne mehrfach speicherung Allgemeine Java-Themen 18
K Methoden Arrays auf true Werte prüfen Allgemeine Java-Themen 4
R Variablen per HSSF geheime Werte von JAVA an EXCEL Allgemeine Java-Themen 2
ARadauer Checksumme über BigDecimal Werte Allgemeine Java-Themen 11
C Datentypen Enum-Werte Bestanteil von anderem Enum Allgemeine Java-Themen 8
Q GregorianCalendar Methode add liefert komische Werte Allgemeine Java-Themen 3
BRoll Image RGB Werte auslesen und vergleichen Allgemeine Java-Themen 8
Madlip Variablen 3 Werte aus ArrayList und weiter ... Allgemeine Java-Themen 4
M Aus Excel Tabelle lesen und Werte in Array speichern Allgemeine Java-Themen 15
A String Array Werte in neues String Array übernehmen Allgemeine Java-Themen 5
S OOP Objekte als Return-Werte: Einen Klon zurückgeben oder Instanz auf das Feld? Allgemeine Java-Themen 10
R Zusammenhängende Werte in 2-dim. Array finden und zählen Allgemeine Java-Themen 3
S Sinnvolles skalieren von Werte-Set? Allgemeine Java-Themen 2
S Keytool: mögliche Werte für Parameter Allgemeine Java-Themen 4
P Werte in Array zählen und Summe der einzelnen Teile ausgeben Allgemeine Java-Themen 10
L Veränderbare Werte zusammenfassen Allgemeine Java-Themen 18
P Variablen Werte der Objektvariablen mit getFields() abfragen Allgemeine Java-Themen 2
O Variablen System.getenv: Sinnlose Werte, Arrays?! Allgemeine Java-Themen 6
T java.uil.Random liefert negative Werte Allgemeine Java-Themen 2
c_sidi90 Werte an bestimmten Position aus PDF in DB sichern Allgemeine Java-Themen 2
C Vergleich von Enums gibt inkorrekte Werte Allgemeine Java-Themen 6
T Array Sortieren (null Werte ans Ende) Allgemeine Java-Themen 2
S Werte aus 2 eindimensionale boolean arrays mithilfe von logischen operatoren berechnen Allgemeine Java-Themen 6
C aus einem String einzelne Hex Werte lesen Allgemeine Java-Themen 7
P JFormattedTextField für durch Semikolon getrennte Integer-Werte gesucht / Regulärer Ausdruck Allgemeine Java-Themen 3
M rxtx OutputStream sendet falsche werte Allgemeine Java-Themen 3
J Hex Werte in Bitmap Raster darstellen Allgemeine Java-Themen 16
E Werte übergabe Allgemeine Java-Themen 2
E Werte in andere Klasse übernehmen Allgemeine Java-Themen 8
S Bytes oder Hex-Werte zu Assembler Code? Allgemeine Java-Themen 6
D Mehrere String-Werte in eine Tabellen-Zelle schreiben Allgemeine Java-Themen 8
P Methoden und Werte Allgemeine Java-Themen 17
M Kugelschnittberechnung liefert falsche Werte Allgemeine Java-Themen 4
N unzählige Werte am besten speichern(?) Allgemeine Java-Themen 2
D Spielerwechsel über boolsche Werte läuft inkorrekt Allgemeine Java-Themen 6
MonsterBit 2 Werte aus 2 Array vergleichen Allgemeine Java-Themen 10
T Apache POI Export EXCEL - [Zahlen-Werte] Allgemeine Java-Themen 1
S Doppelte Werte in Listen,Vectoren etc suchen Allgemeine Java-Themen 2
Airwolf89 Zugriff auf Werte in ArrayList<ArrayList> Allgemeine Java-Themen 4
H Prüfen, ob doppete Werte in int-Array vorhanden sind Allgemeine Java-Themen 16

Ähnliche Java Themen

Neue Themen


Oben