Saltar al contenido
4all.tools

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

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.