JSON naar Kotlin dataclass
Zet een JSON-voorbeeld om in een direct bruikbare Kotlin dataclass.
JSON naar Kotlin dataclass
Plak een JSON-antwoord en dit hulpmiddel zet het om in een direct bruikbare Kotlin dataclass, waarbij het type van elk veld direct uit de verstrekte waarden wordt afgeleid. Het is ontworpen voor Android- en backend-ontwikkelaars die snel een model voor een API-reactie, configuratiebestand of voorbeeld-payload nodig hebben, zonder eigenschaftsnamen en typen handmatig in te tikken of een IDE-plugin te gebruiken.
Stel een naam in voor de hoofdklasse en kies hoe geneste objecten verschijnen: genest in de hoofdklasse of gedeclareerd als aparte klassen op het hoogste niveau. Wissel tussen val voor onveranderbare eigenschappen en var wanneer het model muteerbaar moet zijn, en zet standaardwaarden aan om elke eigenschap een zinvolle fallback te geven (lege tekenreeks, nul, emptyList()) zodat instanties met minder argumenten kunnen worden aangemaakt. Voeg @Serializable- en @SerialName-annotaties toe voor kotlinx.serialization, of @SerializedName voor Gson, en kies 2-spaties-, 4-spaties- of tab-inspringing om aan de stijl van je project te voldoen.
Ontbrekende of nul-waarden worden automatisch nullable typen, arrays worden List<T> met het type afgeleid uit elk element, en objecten met dezelfde vorm worden samengesteld in één hergebruikte klasse in plaats van te worden gedupliceerd. De optie "Velden in array-elementen samenvoegen" bepaalt of dat elementtype uit elk element in de array of alleen uit het eerste wordt opgebouwd, wat nuttig is voor een zeer grote of ongelijk gevormd array. Wanneer de JSON op het hoogste niveau zelf een array is, omhult het hulpmiddel het afgeleide elementtype in een List voor je.
Alles wordt lokaal in je browser uitgevoerd — je JSON wordt nooit geüpload of naar een server verzonden, dus het is veilig om echte API-reacties en interne payloads in te plakken. Kopieer de gegenereerde Kotlin, download deze als .txt-bestand, of stuur de uitvoer terug naar de invoer voor conversie met andere opties.