Convertidor TOML ↔ JSON
Convertir
TOML y JSON codifican los mismos datos de configuración jerárquicos con sintaxis muy diferente. Este convertidor camina ambas direcciones: pega un `Cargo.toml` o `pyproject.toml` para obtener la forma JSON que tu linter o generador espera, o alimenta un config JSON y obtén la versión TOML que viene con el tooling Rust/Python. Maneja las partes de TOML que realmente aparecen en la naturaleza — tablas top-level `[a.b]`, array-of-tables `[[a.b]]`, tablas inline `{ k = v }`, arrays inline, strings básicos, enteros, floats con separadores underscore, booleans, fechas ISO y datetimes.
Cómo usar
- Elige una dirección. `TOML → JSON` parsea tu TOML en un objeto JSON; `JSON → TOML` hace lo inverso.
- Pega la fuente. Los errores apuntan a la línea / carácter que rompió el parseo.
- Copia el resultado. La salida TOML agrupa escalares primero, luego secciones `[table]`, luego bloques `[[array.of.tables]]` — el orden que la mayoría de linters esperan.
Preguntas frecuentes
- ¿Cubre la especificación TOML completa?
- Maneja tablas, keys con puntos, tablas inline, arrays inline, arrays multi-línea, strings básicos, strings básicos multi-línea, strings literales, enteros con separadores `_`, floats, booleans, datetimes RFC 3339, y array-of-tables. Características menos comunes (aritmética de datetime con offset, casos edge de secuencias escape, valores mixtos muy profundamente anidados) hacen round-trip pero pueden necesitar edición manual.
- ¿Por qué JSON → TOML reordena mis keys?
- TOML requiere que los escalares vengan antes de cualquier bloque `[table]` dentro de una sección, porque una vez que `[table]` abre, el siguiente set de keys le pertenece. El serializador reorganiza escalares primero así la salida parsea de vuelta correctamente — el significado de tu campo top-level no cambia.
Herramientas relacionadas
Conversor de Unidades CSS
Convierte entre px, rem, em, pt, vw, vh y % usando tu propio tamaño de fuente y viewport.
Conversor JSON ↔ YAML
Convierte JSON a YAML o YAML a JSON — elige la indentación y copia el resultado.
Conversor de Tamaño de Datos
Convierte entre bytes, KB, MB, GB, TB — en decimal (1000) o binario (1024).
Conversor de Números Romanos
Convierte entre números arábigos y romanos de 1 a 3999.
Conversor de Bases Numéricas
Convierte números entre binario, octal, decimal y hexadecimal.
Conversor de Unidades
Convierte longitud, peso, temperatura, área, volumen, velocidad y tiempo.