Nachstehend ist meine benutzerdefinierte Swift-Klasse. Meine Frage ist, wie man ein Objekt dieser Klasse mit SwiftyJson in eine JSON-Zeichenkette konvertiert?
%Vor%Zum Beispiel so:
%Vor%AKTUALISIEREN
OP ist jetzt glücklich mit EVReflection . Ich nehme an, dass es in diesem Moment die beste Wahl ist.
ORIGINAL ANTWORT
Da schnelle Reflexionsmöglichkeiten noch nicht so reich sind, gibt es jetzt keine ultimative Lösung wie google-gson für Java.
> Bibliotheken wie SwiftJSON und Swift ObjectMapper wird nur in NSJSONSerialization
gezuckert und erfordert, dass Sie Zuordnungen von JSON-Feldern zu Objekteigenschaften definieren.
Aber die Dinge ändern sich und Sie können JsonSerializerSwift ausprobieren. Ich habe es noch nicht benutzt, aber es verwendet schnelle Reflexion und scheint gut zu funktionieren.
Siehe auch Swift Mirrors und JSON von Chris Eidhof Artikel. Es erklärt, wie JSON-Serialisierung mit Reflektionsmöglichkeiten funktioniert.
In Swift 4 gibt es jetzt das Codable-Framework, in dem gebacken wird. Aus meiner Forschung ist dies die beste Option für diejenigen, die auf die neueste Version der Sprache upgraden können.
Wenn die Eigenschaftsnamen identisch sind, sind es nur ein paar Zeilen, um einen Json-Decoder aufzurufen, und wenn sie unterschiedlich sind, müssen Sie nur eine kleine switch-Anweisung schreiben, um sie zuzuordnen.
Ich bin mir sicher, dass in den kommenden Monaten eine Bibliothek auftauchen wird, die sich um Standard-Mapping-Situationen kümmert, aber abgesehen davon, dass die Dinge ziemlich gut aus der Box aussehen.
Überprüfen Sie es hier: Ссылка
Tags und Links ios json swift swifty-json