Android
Moshi
Suche…
Einführung
Moshi ist eine moderne JSON-Bibliothek für Android und Java. Es macht es einfach, JSON in Java-Objekte und Java wieder in JSON zu parsen.
Bemerkungen
Vergessen Sie nicht, lesen Sie immer die README !
JSON in Java
String json = ...;
Moshi moshi = new Moshi.Builder().build();
JsonAdapter<BlackjackHand> jsonAdapter = moshi.adapter(BlackjackHand.class);
BlackjackHand blackjackHand = jsonAdapter.fromJson(json);
System.out.println(blackjackHand);
Java-Objekte als JSON serialisieren
BlackjackHand blackjackHand = new BlackjackHand(
new Card('6', SPADES),
Arrays.asList(new Card('4', CLUBS), new Card('A', HEARTS)));
Moshi moshi = new Moshi.Builder().build();
JsonAdapter<BlackjackHand> jsonAdapter = moshi.adapter(BlackjackHand.class);
String json = jsonAdapter.toJson(blackjackHand);
System.out.println(json);
Eingebaute Typadapter
Moshi bietet integrierte Unterstützung zum Lesen und Schreiben von Java-Kerndatentypen:
- Primitive (int, float, char ...) und ihre geschachtelten Gegenstücke (Integer, Float, Character ...).
- Arrays
- Sammlungen
- Listen
- Sets
- Maps Strings Enums
Es unterstützt Ihre Modellklassen, indem Sie sie Feld für Feld ausschreiben. Im obigen Beispiel verwendet Moshi diese Klassen:
class BlackjackHand {
public final Card hidden_card;
public final List<Card> visible_cards;
...
}
class Card {
public final char rank;
public final Suit suit;
...
}
enum Suit {
CLUBS, DIAMONDS, HEARTS, SPADES;
}
to read and write this JSON:
{
"hidden_card": {
"rank": "6",
"suit": "SPADES"
},
"visible_cards": [
{
"rank": "4",
"suit": "CLUBS"
},
{
"rank": "A",
"suit": "HEARTS"
}
]
}
Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow