Herramientas JSON

TOML a JSONcomprueba los tipos antes de exportar

El ejemplo contiene tablas, servidores y un identificador grande. Las fechas y los enteros fuera del rango seguro pasan a texto por defecto.

TOML a JSON

JSON a TOML

Entrada TOML

Se procesa en este navegador. La entrada no se sube ni se guarda.

Resultado JSON

Opciones de salida

Vista previa de la asignación de tipos

Resultado desactualizado; exportación deshabilitada.

TOML a JSON permite llevar una configuración a una API, una prueba o un script que espera JSON. Las secciones normales se convierten en objetos; las cabeceras [[tabla]] forman arrays ordenados de objetos.

Convertir TOML en JSON no valida por sí solo un manifiesto de Cargo o Poetry. Este conversor de TOML representa la estructura y los valores, pero no decide qué campos necesita tu aplicación ni ejecuta dependencias.

¿Por qué usar TOML a JSON aquí?

Conservar el alcance de cada tabla

TOML a JSON resuelve el padre de cada sección antes de escribir las llaves. Las subtablas tras [[servers]] pertenecen al servidor actual; la clave entre comillas "api.version" sigue siendo un nombre único y no crea otro nivel.

Las tablas con nombre se convierten en objetos anidados y dos secciones de array forman dos objetos ordenados.

Localizar los cambios de tipo

La vista previa diferencia números, enteros grandes convertidos en cadenas, fechas como cadenas y sustituciones por null. Cada JSON Pointer permite comprobar el campo afectado sin recorrer a mano un resultado extenso.

Un valor de calendario y un identificador largo pasan a sendos campos de texto rodeados de comillas.

Elegir las reglas del programa receptor

01

Acordar cómo se reciben los identificadores

Los enteros fuera de ±9007199254740991 se escriben como cadenas decimales por defecto. Elige rechazar si el esquema receptor exige números. Los valores fuera del rango de entero con signo de 64 bits siempre se rechazan.

02

Decidir si null expresa el significado correcto

TOML admite inf y nan, pero JSON no tiene esos números. Por defecto se rechazan; la opción null debe elegirse expresamente. También se aplica al desbordamiento de un flotante y el contador null muestra cuántos valores se sustituyeron.

03

Esperar a que el resultado esté actualizado

La conversión automática espera 350 milisegundos tras un cambio. Desactívala para usar Convertir o Ctrl/Cmd+Intro. Cambiar entrada u opciones bloquea la exportación. La vista crece de 50 en 50 hasta 500 nodos; la descarga sigue siendo completa.

Correspondencias de estructura y valores

Tablas y listas de tipos mixtos

Las tablas normales y claves con puntos producen objetos anidados. Los arrays de tablas conservan el orden y el padre de las subtablas. Una tabla vacía se vuelve {}, una lista vacía [], y una lista de tipos distintos mantiene esa mezcla.

Lectura exacta de los enteros

Cada entero se lee como BigInt antes de decidir su tipo de salida. Las bases hexadecimal, octal y binaria se normalizan a decimal; los separadores desaparecen. Los enteros grandes escritos como cadenas conservan todos sus dígitos exactos.

Cuatro formas de fecha y hora

Las fechas con hora y desplazamiento conservan ese desplazamiento. No se añade zona a los valores locales; una fecha sola y una hora sola mantienen su forma. Las horas usan milisegundos y las fracciones más precisas se truncan.

Posición de sintaxis o ruta del dato

Los errores de sintaxis indican línea y columna y resaltan la línea de entrada. Los errores de política numérica indican un JSON Pointer. En sus rutas, / se representa como ~1 y ~ como ~0 para distinguir claves especiales.

Límites que conviene conocer

Excepciones conocidas del analizador
Se usa smol-toml 1.8.0, orientado a TOML 1.1. No es un validador completo del calendario o Unicode: 2023-02-30 puede normalizarse como 2023-03-02 y no todas las secuencias Unicode inválidas se rechazan.
Precisión de coma flotante
Los números IEEE 754 pueden redondearse o convertirse en 0 por subdesbordamiento. 1.0 sale como 1 y el cero negativo como 0. Infinito, nan y desbordamiento se rechazan o sustituyen por null según la opción elegida.
No conserva la escritura original
Se pierden comentarios, espacios, estilo de comillas, base y escritura de los números. Tampoco se garantiza el orden de claves. JSON no tiene un tipo fecha y las cadenas de enteros grandes requieren un acuerdo con el receptor; no hay una ida y vuelta sin pérdidas.
Un documento de texto acotado
Máximo de entrada: 500.000 caracteres, profundidad 100 y 50.000 nodos; salida: 2.000.000 caracteres. No hay carga de archivos, consulta de URL, lotes ni historial guardado. Un documento con solo comentarios produce {}.
Sin reparación ni migración de aplicaciones
Las claves duplicadas y los errores de sintaxis detienen la conversión. No se borran ni ordenan campos, ni se comprueban esquemas de Cargo o Poetry. El enlace inverso abre otra herramienta sin enviar los datos actuales.

Preguntas sobre TOML a JSON

¿Se puede volver de JSON a TOML?

La dirección inversa está en la herramienta separada JSON a TOML. TOML a JSON convierte fechas en cadenas y pierde comentarios y escritura numérica, así que no recupera necesariamente el documento original. El enlace no transfiere la entrada de forma automática.

¿Se comprueba la sintaxis del documento?

Sí, antes de generar la salida se analiza la sintaxis y se informa de la línea y columna del fallo. No equivale a validar todas las fechas, Unicode o las reglas de tu aplicación. El analizador tiene excepciones documentadas que requieren una revisión adicional.

¿Qué edición de TOML se acepta?

El motor es smol-toml 1.8.0 y tiene TOML 1.1 como objetivo. Por ejemplo, admite tablas en línea repartidas en varias líneas. Las horas quedan en milisegundos y ciertas fechas inválidas se normalizan, por lo que no promete una conformidad absoluta.

¿Por qué desaparecen los comentarios?

JSON no tiene comentarios en su modelo de datos. La salida se construye a partir de los valores leídos, sin conservar ubicaciones de comentarios ni el espaciado original. Guarda el TOML de origen si esas explicaciones deben seguir disponibles.

¿Se admiten arrays de tablas?

Sí. Las cabeceras [[tabla]] producen un array de objetos y las subtablas se asocian al elemento padre actual. El orden de los elementos se mantiene. Una sección [tabla] normal genera un objeto, aunque contenga muchos campos.

¿Una configuración produce un resultado inesperado?

Revisar la siguiente configuración

Usa TOML a JSON para ver qué ocurre con las fechas y el identificador grande del ejemplo, y después prueba tu propia configuración.