Traductor JSON que Preserva la Estructura | Herramienta i18n Gratuita
Traductor JSON gratuito que mantiene intacta su estructura. Traduce archivos i18n, respuestas de API y JSON anidados mientras preserva claves, tipos de datos y formato. Perfecto para aplicaciones i18next y multilingües.
Traductor de Estructura JSON
Esta herramienta traduce el contenido de objetos JSON manteniendo su estructura. Pegue su JSON en el panel izquierdo, seleccione un idioma de destino y vea la salida traducida en el panel derecho.
La traducción aparecerá aquí...
Cómo Usar
- Pegue su objeto JSON en el campo de JSON de Origen.
- Seleccione su idioma de destino en el menú desplegable.
- El JSON traducido aparecerá automáticamente en el panel derecho.
- Haga clic en el botón Copiar para copiar el JSON traducido en su portapapeles.
Documentación
¿Qué es un traductor que conserva la estructura de JSON?
Un traductor que conserva la estructura de JSON es una herramienta que recorre un documento JSON y cambia únicamente los valores de texto que contiene. Las claves de los objetos, los números, los valores true/false y null permanecen exactamente como estaban. Solo se modifican las cadenas.
Esta versión de la herramienta no envía ningún texto a un servicio de traducción. Se ejecuta por completo en el navegador. Para cada cadena que encuentra, añade delante del texto original el código del idioma de destino entre corchetes; por ejemplo, [es] Hello. Esto permite a un desarrollador previsualizar exactamente qué partes de un archivo JSON se traducirían y confirmar que la estructura se conserva durante el proceso, antes de conectar un servicio de traducción real.
Cómo funciona
La herramienta aplica una regla, repetida en cada nivel del árbol JSON:
- Si un valor es una cadena, añade delante el código del idioma de destino entre corchetes:
textse convierte en[code] text. Una cadena vacía se deja como"". - Si un valor es un número, true, false o null, se deja sin cambios.
- Si un valor es un arreglo, aplica esta regla a cada elemento, en el mismo orden.
- Si un valor es un objeto, aplica esta regla a cada valor y mantiene sin cambios todas las claves.
El documento completo no tiene que ser un objeto. Un texto JSON puede ser cualquier valor individual, por lo que un arreglo, una cadena, un número, true, false o null por sí solo también se acepta y se procesa con la misma regla.
La herramienta comprueba primero que el JSON de entrada tenga una sintaxis válida. Si no se puede analizar el JSON, se detiene y muestra un error en lugar de hacer suposiciones.
Cómo usar la herramienta
- Pegue el JSON en el campo «Source JSON» de la izquierda. Funcionan tanto un objeto como un arreglo o un valor individual.
- Elija un idioma de destino en el menú desplegable. Hay nueve idiomas disponibles: español, francés, alemán, italiano, portugués, chino, japonés, coreano y ruso.
- El panel derecho se actualiza automáticamente. No es necesario pulsar ningún botón.
- Haga clic en «Copy» para copiar el resultado al portapapeles.
- Haga clic en «Clear All» para restablecer ambos paneles y empezar de nuevo.
Ejemplo resuelto
JSON de entrada:
1{
2 "app": {
3 "title": "My Store",
4 "version": 2,
5 "isBeta": false,
6 "tags": ["sale", "new"]
7 }
8}
9Con el español (es) seleccionado como idioma de destino, la herramienta produce:
1{
2 "app": {
3 "title": "[es] My Store",
4 "version": 2,
5 "isBeta": false,
6 "tags": [
7 "[es] sale",
8 "[es] new"
9 ]
10 }
11}
12Observe que "title" y "tags" permanecen como claves, 2 y false no cambian, y solo los valores de cadena reciben la etiqueta [es]. La anidación y el orden de los arreglos son idénticos a los de la entrada.
Qué cambia y qué permanece igual
| Elemento JSON | Resultado |
|---|---|
| Valor de cadena | Recibe el prefijo [language code] |
| Número | Sin cambios |
true / false | Sin cambios |
null | Sin cambios |
| Clave del objeto | Siempre permanece sin cambios, incluida una clave llamada literalmente __proto__ |
| Orden del arreglo | Siempre permanece sin cambios |
Cadena vacía "" | Sin cambios |
Esto es especialmente importante para los archivos cuya estructura tiene significado, como un archivo de internacionalización (i18n) utilizado por una aplicación web o una respuesta de API que el código cliente lee por nombre de clave. Si una clave como "welcomeMessage" cambiara durante la traducción, el código que busca welcomeMessage dejaría de funcionar. Esta herramienta nunca modifica las claves, por lo que ese riesgo no se aplica aquí.
Errores comunes
«Invalid JSON format. Please check your input.» Este mensaje aparece cuando el texto pegado no es un JSON válido. Las causas habituales son una coma ausente entre elementos, una coma final después del último elemento, el uso de comillas simples en lugar de comillas dobles o un carácter especial sin escapar dentro de una cadena. Ejecutar primero la entrada mediante un validador de JSON puede ayudar a encontrar el punto exacto.
«Translation failed. Please try again.» Este es el mensaje alternativo para un fallo que no es un error de sintaxis. Es poco frecuente. La causa más probable es una entrada tan grande que el resultado formateado superaría el límite del navegador para la longitud de un solo fragmento de texto. Dividir un archivo muy grande en partes más pequeñas evita este problema.
Dejar vacío el campo de entrada muestra un mensaje de marcador de posición y no se considera un error. Pegar el valor individual null tampoco es un error: null es un JSON válido y la herramienta devuelve null.
Por qué es importante conservar la estructura
Los archivos JSON que almacenan traducciones de una aplicación, como en.json y fr.json, normalmente necesitan claves idénticas para que el código circundante pueda buscar la misma ruta en cualquier idioma, por ejemplo user.profile.displayName. Lo mismo ocurre con las respuestas de API que se leen por nombre de campo y con los archivos de configuración, donde cambiar el nombre de una clave puede interrumpir un despliegue. Conservar la estructura mientras se marcan las cadenas traducibles es un primer paso útil antes de enviar esas cadenas a un servicio de traducción real o de someterlas a revisión lingüística.
Preguntas frecuentes
¿Esta herramienta utiliza un servicio de traducción real? No. Se ejecuta únicamente en el navegador y no envía datos a ningún sitio. Marca cada cadena con el código del idioma de destino en lugar de producir palabras traducidas.
¿Por qué mi resultado muestra [es] Hello en lugar de Hola? Esa etiqueta entre corchetes es el comportamiento de marcador de posición de la versión actual. Muestra qué cadenas se traducirían y a qué idioma, sin realizar una traducción real.
¿Cambiará las claves de mis objetos o los números? No. Las claves, los números, true/false y null pasan sin cambios por todos los niveles de anidación, incluso dentro de arreglos. Esto también se aplica a nombres de clave poco habituales, como __proto__, que algunos códigos JavaScript eliminan accidentalmente.
¿Necesita conexión a Internet? No. El análisis y el etiquetado se realizan localmente en la pestaña del navegador.
¿Puedo usarla para archivos de traducción de i18next o similares? El resultado conserva la misma estructura de claves que la entrada, por lo que es compatible con cualquier marco de trabajo que espere claves coincidentes entre los archivos de idiomas. Los valores de cadena aún deben sustituirse por traducciones reales antes de usarlos.
¿Qué ocurre con un JSON profundamente anidado o con arreglos dentro de arreglos? La herramienta procesa todos los niveles, por profundos que sean, y cada elemento de los arreglos, aplicando la misma regla en cada caso.
Referencias
- RFC 8259: Formato de intercambio de datos de la notación de objetos de JavaScript (JSON), IETF: rfc-editor.org/rfc/rfc8259
- ECMA-404: Sintaxis de intercambio de datos JSON, Ecma International: ecma-international.org/publications-and-standards/standards/ecma-404/
- MDN Web Docs, Trabajo con JSON: developer.mozilla.org/en-US/docs/Learn/JavaScript/Objects/JSON