Input JSON

Output Kotlin

Cos'è JSON in Kotlin?

Kotlin usa le data class per i dane strutturati. Quando analizzi JSON con kotlinx.serialization o Gson, hai bisogno di tipi Kotlin corrispondenti. Questo narzedzie genera data class Kotlin dalla struttura del tuo JSON per l'uso con Json.decodeFromString o Gson.fromJson.

La conversione viene eseguita nel tuo browser. Imposta il nome della data class e il pacchetto nella configurazione. Abilita Data Class per la sintassi <code>data class</code> e Tipi Nullable per i campi opzionali. Nulla viene inviato a un server.

Come usare questo narzedzie

1

Incolla o carica JSON

Incolla il tuo JSON nell'editor sinistro o carica un plik. Usa <strong>Przyklad</strong> per dane di esempio. Imposta il nome della data class radice e il pacchetto nella configurazione. Abilita Data Class e Tipi Nullable secondo necessità.

2

Rivedi i tipi generati

Il pannello di destra mostra le data class Kotlin. Gli oggetti annidati diventano tipi annidati. Gli array diventano <code>List&lt;T&gt;</code>. Usa <code>@SerializedName</code> o <code>@Json</code> se le chiavi JSON differiscono dai nomi delle proprietà. Per JSON nieprawidlowy, usa prima il Formater JSON o il Walidator JSON.

3

Kopiuj o scarica

Usa <strong>Kopiuj</strong> o <strong>Pobierz</strong>. Incollalo nel tuo progetto Android o Kotlin. Per formattare prima il JSON, usa il Formater JSON. Per la validazione, usa il Walidator JSON.

Esempi JSON in Kotlin

Ecco un esempio di generazione di data class Kotlin da un oggetto JSON.

Przyklad: Record abbonato

Input JSON:

Input

Output Kotlin generato:

Output

Quando JSON in Kotlin è utile

Quando sviluppi app Android o servizi backend Kotlin che consumano REST API, hai bisogno di data class tipizzate. Incolla una risposta di esempio qui per ottenere modelli Kotlin per Retrofit, Gson o kotlinx.serialization.

czesto zadawane pytania

Data class vs classe regolare?

Le data class forniscono equals, hashCode, toString e copy automaticamente. Sono preferite per i DTO. Abilita Data Class nella configurazione per la sintassi data class.

Tipi nullable?

Abilita i Tipi Nullable per i campi JSON opzionali. Kotlin usa Type? per nullable. Utile quando un campo può essere null o mancante nella risposta API.

I miei dane vengono inviati da qualche parte?

Nie. La generazione viene eseguita interamente nel tuo browser. Nessun JSON o codice viene inviato a nessun server.

Gson o kotlinx.serialization?

Entrambe funzionano con le data class generate. Gson usa @SerializedName per nomi di chiave personalizzati. kotlinx.serialization usa @SerialName. Aggiungi le annotazioni appropriate se le chiavi JSON differiscono dai nomi delle proprietà.

Posso usarlo con Retrofit?

Sì. Retrofit funziona con Gson o kotlinx.serialization. Genera le data class qui, poi usale come tipi di risposta nella tua interfaccia API.

powiazane narzedzia

Per JSON in Kotlin, vedi kotlinx.serialization e Gson. Per JSON, vedi la specifica JSON e RFC 8259.