Omnikit
DesarrolloArchivosDineroTodas las herramientas
Ctrl K
Herramientas de desarrolloHerramientas de archivosCalculadoras financierasTodas las herramientas
InicioHerramientas para desarrolladoresConvertidor de JSON a data classes de Kotlin
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский

Convertidor de JSON a data classes de Kotlin

desarrollo

Convierta una muestra JSON en data classes de Kotlin para kotlinx.serialization, Gson o Moshi

Se ejecuta en su navegador. Nada de lo que escribe se envía a ningún sitio. Comprobado el 16 de octubre de 2026.

Pegue una muestra JSON y obtenga data classes de Kotlin para kotlinx.serialization, Gson o Moshi. Los números enteros pasan a Int, a Long por encima de 2,147,483,647, cualquier decimal convierte la propiedad en Double, un valor null la hace anulable, y una clave ausente en algunos objetos pasa a T? = null para que las 3 bibliotecas la decodifiquen.

Esta página se ha traducido automáticamente del original en inglés. Ninguna persona ha revisado todavía la traducción, así que la versión en inglés es la que debe consultar. Leer el original en inglés

Siguiente:
  • Convertidor de JSON a clases Java Convierta una muestra JSON en POJO, records o clases Lombok de Java anotados para Jackson
  • Formateador y validador JSON Formatee, valide, minifique y ordene JSON con la posición exacta de cada error

Cómo convertir JSON en una data class de Kotlin

1

Pegue una muestra JSON, por ejemplo la respuesta de una API, en el cuadro de la izquierda.

2

Las data classes de Kotlin aparecen mientras escribe, una por objeto, con propiedades en camelCase y una anotación allí donde la clave es distinta.

3

Elija kotlinx.serialization, Gson o Moshi, var en lugar de val si lo necesita, y el nombre de la clase raíz.

4

Pulse Copiar, o Descargar para guardar Models.kt.

Acerca del Convertidor de JSON a data classes de Kotlin

Kotlin lee JSON en data classes, y cada objeto necesita una clase cuyas propiedades tengan los tipos correctos, la anulabilidad correcta y una forma de volver a sus claves. Este convertidor escribe esas clases a partir de una muestra, así que una respuesta de API larga se convierte en Kotlin con un solo pegado.

Cómo se eligen los tipos.

Valor JSON Tipo Kotlin
"text" String
true / false Boolean
42 (solo números enteros) Int, o Long más allá de 32 bits
4.5 (si aparece algún decimal) Double
null, y además un tipo String?, Int?
solo null, o tipos mezclados JsonElement? o Any?
[ ... ] List<...>
{ } vacío JsonObject o Map<String, Any?>
{ ... } una data class propia

Claves ausentes. Todos los objetos de un array se fusionan en una clase. Una clave que algunos omiten pasa a ser anulable con null como valor por defecto, porque kotlinx.serialization y Moshi tratan como error una clave ausente sin valor por defecto. kotlinx.serialization también rechaza las claves para las que no tiene propiedad, así que cada clave de la muestra recibe una.

Nombres. Las propiedades van en lowerCamelCase. Cuando eso cambia la clave, como user_name a userName, la propiedad lleva @SerialName, @SerializedName o @Json(name = ...), según la biblioteca. Las palabras clave como class se escriben entre comillas invertidas. Las cadenas de las anotaciones escapan el signo de dólar, ya que Kotlin lo leería como una plantilla.

Opciones. var en lugar de val da propiedades mutables. Un objeto vacío pasa a ser una clase normal, porque una data class necesita al menos una propiedad. La clase raíz se llama Root salvo que le ponga otro nombre.

Cada resultado se comprobó leyendo de nuevo el Kotlin y decodificando 9 muestras con las reglas por defecto de kotlinx.serialization. Nada de lo que pegue sale del navegador.

Preguntas frecuentes

¿Cómo convierto JSON en una data class de Kotlin?

Pegue una muestra JSON en el convertidor y las data classes aparecen al lado, una por objeto. Con kotlinx.serialization, añada el plugin y decodifique con Json.decodeFromString<Root>(text); con Gson use Gson().fromJson(text, Root::class.java); con Moshi cree un adaptador para Root.

¿Por qué algunas propiedades terminan en = null?

Una clave que algunos objetos de un array omiten recibe un tipo anulable y null como valor por defecto. Tanto kotlinx.serialization como Moshi rechazan una clave ausente salvo que la propiedad tenga valor por defecto, así que ese valor es lo que permite decodificar cada objeto de la muestra.

¿Qué biblioteca debo elegir?

kotlinx.serialization es la propia de Kotlin, funciona en todas las plataformas de Kotlin y comprueba los tipos al compilar. Moshi con codegen encaja en proyectos Android que ya usan Retrofit y Okio. Gson es la más antigua y no requiere configuración, pero ignora la seguridad frente a null de Kotlin y los valores por defecto al crear objetos.

¿Qué pasa con claves como user_name o class?

Las propiedades van en lowerCamelCase, así que user_name pasa a userName, con @SerialName, @SerializedName o @Json(name = ...) conservando la clave original. Una clave que es palabra clave de Kotlin, como class u object, se escribe entre comillas invertidas, lo que mantiene la clave como nombre real de la propiedad.

¿Qué tipos reciben los números en Kotlin?

Los números enteros pasan a Int, o a Long cuando un valor supera 2,147,483,647, y un campo pasa a Double en cuanto algún valor de la muestra tiene parte decimal. Los valores de tipos distintos pasan a JsonElement? con kotlinx.serialization, o a Any? con Gson y Moshi.

¿Se sube mi JSON?

No. La conversión se hace en su navegador sin ninguna petición a un servidor, y el JSON no se guarda, así que las respuestas de API con tokens o datos personales se quedan en su dispositivo. Cierre la pestaña y no queda nada.

Fuentes

  • Kotlin documentation, keywords and operatorsHard keywords that need backticks as names
  • Kotlin documentation, coding conventions: naming rulesUpperCamelCase classes, lowerCamelCase properties
  • kotlinx.serialization guide, basic serialization@SerialName, optional properties need defaults, unknown keys are errors
  • Moshi README, Kotlin codegen@JsonClass(generateAdapter = true) and @Json(name = ...)

Última verificación: 16 de octubre de 2026.

Los tipos y las normas cambian; consulte la fuente antes de fiarse de una cifra.

¿Sigue sin resolverlo? Pregunte sobre Convertidor de JSON a data classes de Kotlin y cualquiera que lo sepa puede responder. No se necesita cuenta.

Herramientas relacionadas

Todas las herramientas para desarrolladores
Codificar y decodificar Base64Texto y archivos a Base64 y de vuelta, con modo seguro para URL y vista previa de imágenesConversor de timestamp UnixDe timestamps Unix a fechas y de fechas a timestamps, en cualquier zona horariaJSON a TypeScriptGenere interfaces o tipos de TypeScript a partir de una muestra JSONConvertir CSV a JSONConvierta CSV a JSON y JSON a CSV, con una vista previa en tablaConvertir YAML a JSONConvierta YAML a JSON y JSON a YAML, con los anclajes resueltosCodificador y decodificador de URLCodifique o decodifique texto y URL con codificación porcentual y vea cada parte de un enlaceConversor de coloresHEX, RGB, HSL, HWB, OKLCH y CMYK en ambos sentidos, con comprobación de contrasteConversor de bases numéricasBinario, octal, decimal, hexadecimal y cualquier base hasta 36, exacto a cualquier tamaño, con complemento a dos
¿Le ha resultado útil esta herramienta?
Omnikit

Tareas pequeñas, hechas en su navegador. Gratis, rápido y privado. Los archivos nunca se suben.

Archivos

  • Compress Image
  • Image to PDF
  • Merge PDF
  • Compress PDF
  • PDF to Word
  • Word to PDF

Desarrollo

  • JSON Formatter & Validator
  • Base64 Encode & Decode
  • JWT Decoder, Verifier & Encoder
  • Password Generator
  • UUID Generator
  • Unix Timestamp Converter

Dinero

  • SIP Calculator
  • EMI Calculator
  • GST Calculator
  • FD Calculator
  • PPF Calculator
  • Lumpsum Calculator
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский
GuíasPreguntasAcerca deCómo verificamosBiblioteca de leyes (beta)PrivacidadCondicionesDivulgaciónContactoMore: Exam practice (UGC NET Paper 1)Se ejecuta en su navegador. No se sube nada. © 2026 Omnikit (theomnikit.com)