Convierte JSON y YAML localmente
Convierte JSON y YAML en tu navegador. Conserva los valores y la escritura de los números, revisa los avisos y descarga el resultado.
Espacio de trabajo de la herramienta
YAML 1.2.2, subconjunto compatible con JSON
Pega texto o elige un archivo UTF-8 local. La conversión empieza solo al pulsar Convertir.
Elige dirección e introduce texto, o inserta un ejemplo.
No hay Worker local disponible. La conversión no puede ejecutarse en este navegador.
Vista previa de solo lectura. Copiar y descargar usan la salida completa vigente.
Diagnósticos y avisos
Se omitieron detalles o la inspección no pudo terminar. Los conteos describen la entrada inspeccionada.
Capacidades admitidas
Un documento; claves string; números con escritura JSON. Se omiten comentarios y formato. Tags, anchors, aliases y claves merge quedan fuera del subconjunto.
Los valores plain yes y fechas son strings; true es booleano; una clave 1 requiere comillas; a: es null.
Para un número YAML no admitido, usa escritura JSON compatible o comillas si deseas un string. Se conservan los lexemas numéricos; otros consumidores pueden redondear enteros grandes o decimales precisos, o convertir un número muy pequeño en cero.
Límites
Entrada: 1.000.000 unidades UTF-16 / 4.000.000 bytes UTF-8. Salida: 2.000.000 unidades / 8.000.000 bytes. Archivo: 4.000.000 bytes. Profundidad: 100. Valores: 100.000.
Procesamiento local. El texto y los archivos no se suben ni se guardan.
De JSON a YAML
Selecciona JSON → YAML, pega JSON estricto o carga un archivo .json y pulsa Convertir. Puedes elegir sangría de 2 o 4 espacios y cómo escribir las cadenas: entre comillas, que es la opción predeterminada, o en bloques multilínea.
{"code":"00123","active":true,"missing":null,"items":[1,"yes",false,null,{},[]],"message":"Hello\nWorld\n"}
Por defecto, todas las claves y cadenas salen entre comillas. El modo de bloques solo se aplica cuando permite conservar exactamente el texto; en los demás casos se mantienen las comillas. Se conservan el orden de las propiedades, los contenedores vacíos y los arrays con elementos de distintos tipos.
De YAML a JSON
Selecciona YAML → JSON, pega el texto o abre un archivo .yaml o .yml, elige la sangría y convierte.
# Ejemplo local; este comentario se omite de JSON
code: "00123"
active: true
missing:
items: [1, "yes", false, null, {}, []]
message: |
Hello
World
En este ejemplo, missing: equivale a null. Las comillas de "00123" conservan el código como cadena; sin ellas, 00123 se rechaza porque no cumple la escritura numérica admitida. yes y fechas como 2026-10-04 se leen como cadenas, mientras que true es un booleano. Para una clave numérica, escribe "1" entre comillas: todas las claves deben ser cadenas.
Qué YAML admite
El conversor admite un subconjunto de YAML 1.2.2 que puede representarse en JSON: un documento con objetos, arrays, cadenas, números finitos, booleanos y null. Puedes usar colecciones en bloque o en línea, bloques de texto literales o plegados y una directiva %YAML 1.2 con su marcador de inicio.
No admite etiquetas explícitas, anclas, alias, claves de fusión sin comillas, claves duplicadas o que no sean cadenas, varios documentos ni otras directivas. Cuando una construcción YAML es válida pero no está admitida, el mensaje la distingue de un error de sintaxis.
Los números deben seguir la escritura de JSON. Formas como 0x10, +1 o .inf se rechazan; usa una representación admitida o comillas si quieres conservarlas como texto. 1_000 se interpreta como cadena. El conversor no repara la entrada ni acepta JSONC o JSON5.
Qué se conserva al convertir
Números como -0, 1.0, 1e0, 9007199254740993 y 1e-400 conservan su escritura. Revisa los avisos de precisión: otro programa puede redondear esos valores al leerlos, aunque este conversor mantenga el texto. Los números que exceden el rango finito admitido se rechazan.
Los valores, las claves y el orden de propiedades y arrays se conservan dentro del subconjunto admitido. Los comentarios YAML se omiten y se indica cuántos había. La conversión de ida y vuelta no reconstruye los comentarios, las directivas, las comillas ni el formato original. Primero se obtiene el texto de los bloques YAML y después se escribe con los escapes necesarios en JSON.
Descarga y límites
Copiar y descargar incluyen toda la salida, aunque la vista previa termine en 20.000 unidades UTF-16. Si falla el portapapeles, puedes abrir el texto completo para copiarlo manualmente. Las descargas son converted.yaml o converted.json, en UTF-8 sin BOM y con un salto LF final.
| Límite | Máximo |
|---|---|
| Archivo | 4.000.000 bytes |
| Entrada | 1.000.000 unidades UTF-16 / 4.000.000 bytes UTF-8 |
| Salida | 2.000.000 unidades UTF-16 / 8.000.000 bytes |
| Texto por clave o valor escalar | 250.000 unidades UTF-16 |
| Contenedores anidados / valores | 100 niveles / 100.000 |
| Tiempo de conversión | 10 segundos |
Una estructura compleja puede alcanzar otros límites de procesamiento antes. Los errores, los límites superados y la cancelación no producen salida parcial.
Los archivos deben usar UTF-8. Se retira un BOM inicial con aviso; dos BOM iniciales se rechazan. Todo se procesa en un Worker local, sin subir ni guardar documentos. Se necesita JavaScript. Cambiar la entrada, el modo o las opciones exige volver a convertir. Cancelar conserva el texto para reintentar.