Comment puis-je sérialiser un objet au format suivantComment sérialiser un JSON avec une clé d'objet comme identifiant?
"niveau": { "3": "abc", "1": "ddf"}
J'utilise GSON pour la sérialisation ?
Comment puis-je sérialiser un objet au format suivantComment sérialiser un JSON avec une clé d'objet comme identifiant?
"niveau": { "3": "abc", "1": "ddf"}
J'utilise GSON pour la sérialisation ?
vous pouvez créer la classe de cette façon et utiliser @SerializedName (KEY)
public static class Parent {
Level level;
public Level getLevel() {
return level;
}
public void setLevel(Level level) {
this.level = level;
}
public static class Level {
@SerializedName("1")
String valueOne;
@SerializedName("2")
String valuethree;
public String getValueOne() {
return valueOne;
}
public void setValueOne(String valueOne) {
this.valueOne = valueOne;
}
public String getValuethree() {
return valuethree;
}
public void setValuethree(String valuethree) {
this.valuethree = valuethree;
}
}
}
et utiliser
//initial
Gson gson = new Gson();
Parent parent = new Parent();
Parent.Level level = new Parent.Level();
//set value
level.setValueOne("abc");
level.setValuethree("ddf");
parent.setLevel(level);
//convert to String
String str = gson.toJson(parent);
Log.i("=============", str);
1,2 ne sont pas des clés statiques. C'est dynamique, Hashmap
vous pouvez toujours utiliser 'JSONObject'. –
Faire une hashmap de paire de valeur clé pour générer le contenu interne ({"3": "abc", "1": "ddf"}) ... puis à la fin mettre en JSONObject avec le niveau clé ... –
vous pouvez créer deserializer personnalisé (serializer) –