Ugrás a tartalomhoz
100% helyi

JSON Kotlin adatklasszisra

A JSON minta átalakítása használatra kész Kotlin adatklasszisra.

Bemenet
Kimenet

JSON Kotlin adatklasszisra

Illessz be egy JSON választ, és ez az eszköz átalakítja egy használatra kész Kotlin adatklasszisra, az összes mező típusát közvetlenül az Ön által megadott értékekből következteti ki. Az Android és backend fejlesztőknek készült, akiknek gyors modellre van szükségük egy API válaszhoz, egy konfigurációs fájlhoz vagy egy minta adathalmazhoz, anélkül, hogy kézzel kellene begépelni a tulajdonságneveket és típusokat, vagy IDE bővítményt kellene keresni.

Adjon nevet a gyökérosztálynak, és válassza ki, hogyan jelenjenek meg a beágyazott objektumok: beágyazva a gyökérosztályba, vagy függetlenül deklarált felső szintű osztályokként. Válasszon val és var között az immutábilis és mutábilis tulajdonságokhoz, és kapcsolja be az alapértelmezett értékeket, hogy minden tulajdonságnak legyen egy ésszerű fallback értéke (üres karakterlánc, nulla, emptyList()), így az objektumok kevesebb argumentummal is létrehozhatók. Adjon hozzá @Serializable és @SerialName megjegyzéseket a kotlinx.serialization számára, vagy @SerializedName a Gson számára, és válasszon 2 szóköz, 4 szóköz vagy tabulátor behúzást a projektstílusához igazodva.

A hiányzó vagy null értékek automatikusan nullable típusokká válnak, a tömbök List<T> típusúvá válnak az elemtípussal, az azonos formájú objektumok pedig egy újrafelhasznált osztályba összevonódnak. A "Mezők egyesítése tömbök között" opció szabályozza, hogy az elemtípus a tömb összes eleméből vagy csak az elsőből épül-e fel, ami akkor hasznos, ha a tömb nagyon nagy vagy egyenetlen formájú. Ha a JSON felső szintje maga is egy tömb, az eszköz automatikusan List típussal burkolja az kikövetkeztetett elemtípust.

Minden helyileg, a böngészőben fut – az Ön JSON-ja soha nem kerül feltöltésre vagy küldésre egy szerverre, így biztonságos valódi API válaszokat és belső adathalmazokat beilleszteni. Másolja ki az előállított Kotlin-t, töltse le .txt fájlként, vagy küldje vissza a kimenetet a bemenetbe, hogy más opciókkal konvertálja meg újra.

Gyakori kérdések

Hogyan dönti el az eszköz, mely mezők legyenek nullable?
Egy mező nullable lesz, ha hiányzik legalább egy mintaobjektumból, vagy ha az egyetlen megfigyelt értéke null. Ha egy mező minden objektumban jelen van nem-null értékkel, akkor nem-nullable marad.
Képes-e a szükséges kotlinx.serialization vagy Gson megjegyzéseket generálni?
Igen. Válassza a kotlinx.serialization lehetőséget a @Serializable és @SerialName megjegyzések hozzáadásához, vagy a Gson lehetőséget a @SerializedName hozzáadásához az eredeti JSON kulccsal, így az osztály helyesen deszerializálódik, még akkor is, ha a tulajdonságnév eltér.
Mi történik olyan JSON tömbdel, amelynek objektumai eltérő formájúak?
A mezőik egy adatklasszisba kerülnek vereinítve, az egyes elemekből hiányzó mezők nullable-ként lesznek megjelölve. Kapcsolja ki a "Mezők egyesítése tömbök között" lehetőséget, ha csak az első elemből szeretné kikövetkeztetni a típust.
Támogatja a beágyazott objektumokat?
Igen. Egy beágyazott objektum saját adatklasszisá válik, amely a gyökérosztály belsejében vagy egy külön felső szintű osztályként van deklarálva, a beágyazási lehetőségtől függően.
A JSON-om feltöltésre kerül valahova?
Nem. Az átalakítás teljes egészében a böngészőjében fut – a JSON-ja soha nem hagyja el az Ön eszközét.