JSON a Kotlin
Convertir JSON a data classes de Kotlin para desarrollo Android y Kotlin
Entrada JSON
Salida Kotlin
¿Qué es JSON a Kotlin?
Kotlin usa data classes para datos estructurados. Al parsear JSON con kotlinx.serialization o Gson, necesitas tipos Kotlin coincidentes. Esta herramienta genera data classes de Kotlin desde tu estructura JSON para usar con Json.decodeFromString o Gson.fromJson.
La conversión se ejecuta en tu navegador. Configura el nombre de la data class y el package en la configuración. Activa Data Class para sintaxis <code>data class</code> y Tipos nullable para campos opcionales. No se envía nada a ningún servidor.
Cómo usar esta herramienta
Pegar o subir JSON
Pega tu JSON en el editor izquierdo o sube un archivo. Usa <strong>Ejemplo</strong> para datos de ejemplo. Configura el nombre de la data class raíz y el package en la configuración. Activa Data Class y Tipos nullable según sea necesario.
Revisar los tipos generados
El panel derecho muestra data classes de Kotlin. Los objetos anidados se convierten en tipos anidados. Los arrays se convierten en <code>List<T></code>. Usa <code>@SerializedName</code> o <code>@Json</code> si las claves JSON difieren de los nombres de propiedad. Para JSON inválido, usa primero el Formateador JSON o Validador JSON.
Copiar o descargar
Usa <strong>Copiar</strong> o <strong>Descargar</strong>. Pégalo en tu proyecto Android o Kotlin. Para formatear JSON primero, usa el Formateador JSON. Para validación, usa el Validador JSON.
Ejemplos de JSON a Kotlin
Aquí un ejemplo de generación de data classes de Kotlin desde un objeto JSON.
Ejemplo: Registro de suscriptor
Entrada JSON:
Salida Kotlin generada:
Cuándo ayuda JSON a Kotlin
Al desarrollar apps Android o servicios backend Kotlin que consuman APIs REST, necesitas data classes tipadas. Pegar una respuesta de ejemplo aquí te da modelos Kotlin para Retrofit, Gson o kotlinx.serialization. Para pruebas de API, Postman ayuda.
Preguntas frecuentes
¿Data class vs clase regular?
Las data classes proporcionan equals, hashCode, toString y copy automáticamente. Se prefieren para DTOs. Activa Data Class en la configuración para sintaxis data class.
¿Tipos nullable?
Activa Tipos nullable para campos JSON opcionales. Kotlin usa Type? para nullable. Útil cuando un campo puede ser null o faltar en la respuesta de la API.
¿Se envían mis datos a algún sitio?
No. La generación se ejecuta completamente en tu navegador. No se envía JSON ni código a ningún servidor.
¿Gson o kotlinx.serialization?
Ambos funcionan con las data classes generadas. Gson usa @SerializedName para nombres de clave personalizados. kotlinx.serialization usa @SerialName. Añade las anotaciones apropiadas si las claves JSON difieren de los nombres de propiedad.
¿Puedo usar esto con Retrofit?
Sí. Retrofit funciona con Gson o kotlinx.serialization. Genera las data classes aquí y úsalas como tipos de respuesta en tu interfaz de API.
Herramientas relacionadas
Para JSON en Kotlin, ver kotlinx.serialization y Gson. Para JSON, ver la especificación JSON y RFC 8259. Para una visión general, ver MDN.