Ich habe eine JSON-Struktur, die ich unten eingefügt habe. Ich möchte das JSON in einen Java-POJO mit Gson
deserialisieren, was ziemlich einfach ist, außer dass ich eines der Felder, data
, als einen String-Typ anstelle eines geschachtelten Objekts behalten möchte. p>
JSON-Struktur
%Vor%Mein POJO würde dann so aussehen:
%Vor% Das Feld data
sollte als JSON-formatierter String erhalten bleiben.
Ich habe versucht, eine benutzerdefinierte TypeAdapter
zu implementieren und das Feld als String zu lesen, aber es schlägt mit Expected a string but was BEGIN_OBJECT
fehl.
Ich möchte auch, dass die Struktur auch bei der Serialisierung beibehalten wird - damit ich das POJO wieder in die ursprüngliche JSON-Struktur serialisieren kann.
Bearbeiten Benutzerdefiniert TypeAdapter
:
Sie könnten einen benutzerdefinierten JsonDeserializer wie dieser:
%Vor%Und du benutzt es so:
%Vor%Der schlechte Teil ist, dass es nicht so schnell ist wie der, den Sie geschrieben haben, aber Sie können zumindest benutzerdefinierte Parsing-Funktionen wie diese durchführen.