Skip to main content
Tool Factory

Recurso basado en evidencia

Convierte CSV y JSON de forma privada en tu navegador

Convierte CSV y JSON de forma privada en tu navegador. Aprende análisis seguro, tipos, UTF-8, riesgos de fórmulas, validación y controles de archivos.

La conversión de CSV y JSON en el navegador puede mantener el contenido de los archivos en tu dispositivo. Esto ocurre cuando la aplicación lee, analiza, transforma y descarga todo localmente. Este diseño reduce la transferencia de datos. No hace que todas las páginas, extensiones, dispositivos o entradas sean seguros de forma automática.

Respuesta rápida: Usa un conversor que declare el procesamiento local en el navegador. Desconecta la red para trabajos muy sensibles y no esenciales cuando la aplicación funcione sin conexión. Inspecciona delimitadores, cabeceras, codificación, tipos de datos, fórmulas y cantidades de filas. Valida la salida JSON antes de eliminar el archivo de origen.

Esta guía explica las diferencias entre CSV y JSON, el significado de “privado en tu navegador” y la validación de una conversión. Relaciona el flujo con el conversor de CSV a JSON, las herramientas JSON y las herramientas de datos CSV y XML.

¿Se puede convertir CSV a JSON sin cargar un archivo?

Sí. Los navegadores modernos permiten que una página lea un archivo seleccionado por el usuario. JavaScript puede analizarlo en memoria y crear una descarga sin enviar el contenido a un servidor de la aplicación.

La API File de W3C define el acceso del navegador a archivos seleccionados y datos binarios. Una conversión local puede usar una entrada de archivo, FileReader, Blob, URL de objeto y una acción de descarga. El navegador todavía carga el código de la aplicación desde algún lugar, salvo que la página ya funcione sin conexión.

Respuesta directa: “Se ejecuta en tu navegador” describe dónde ocurre la transformación principal. No demuestra por sí solo que ningún código envíe datos. Verifica la declaración del producto, el comportamiento de red, los controles del código, las extensiones y la política del dispositivo cuando los datos sean sensibles.

Una herramienta puede enviar telemetría, detalles de errores o contenido si su código lo decide. Una dependencia comprometida también puede cambiar el comportamiento. Las extensiones pueden tener amplio acceso a la página. Los dispositivos administrados, antivirus, carpetas sincronizadas, gestores del portapapeles y copias del sistema crean rutas de datos separadas.

Para datos estructurados ordinarios, la conversión local puede mejorar mucho la privacidad porque elimina una carga rutinaria al servidor. Para registros regulados, secretos o de alto impacto, sigue la herramienta aprobada y la política de tratamiento de datos de la organización.

¿En qué se diferencian CSV y JSON?

CSV representa registros tabulares mediante campos de texto y delimitadores. JSON representa valores mediante objetos, matrices, cadenas, números, booleanos y null. La conversión necesita decisiones porque los formatos no guardan la misma estructura ni los mismos tipos.

Aspecto CSV JSON Decisión de conversión
Estructura principal Filas y campos Objetos y matrices anidados Elegir un objeto por fila u otro esquema
Nombres de campos A menudo la primera fila Nombres de miembros del objeto Decidir si la primera fila es cabecera
Tipos Normalmente texto al analizar Cadenas, números, booleanos y null Conservar texto o inferir tipos
Anidación Sin modelo anidado universal Anidación nativa Aplanar o serializar valores anidados
Datos ausentes Campo vacío o columna ausente Miembro ausente, cadena vacía o null Definir una política
Delimitador Coma, tabulación, punto y coma u otro La sintaxis usa puntuación Detectar o seleccionar el delimitador CSV
Codificación de caracteres Necesita un acuerdo externo El intercambio suele usar UTF-8 Decodificar bien el origen
Orden de registros Orden de filas Se conserva el orden de la matriz Conservar u ordenar de forma intencional

RFC 4180 documenta un formato CSV común y su tipo MIME. Describe registros separados por comas, cabeceras opcionales, campos entre comillas dobles y comillas escapadas. Los archivos reales pueden usar tabulaciones, puntos y comas, otros finales de línea o convenciones específicas.

RFC 8259 define el formato de intercambio de datos JSON. Un texto JSON contiene un valor serializado. Los objetos usan nombres y valores. Las matrices usan valores ordenados. La sintaxis JSON no admite comentarios, comas finales, NaN ni Infinity.

¿Qué puede perder la conversión?

La conversión puede perder la intención de tipo, ceros iniciales, precisión, cabeceras duplicadas, estructura anidada, semántica de fórmulas y formato original. Un análisis correcto no significa que el resultado conserve el significado empresarial.

Considera un campo CSV con 00123. Puede ser un código postal, un identificador o un número. Convertirlo al número JSON 123 elimina los ceros iniciales. 1E10 puede ser un identificador que parece notación científica. Un número de cuenta largo puede superar el intervalo numérico exacto del consumidor.

Las fechas crean un riesgo similar. 01/02/03 no identifica una fecha única en todos los países. Un conversor no debe adivinar en silencio. Conserva los valores ambiguos como cadenas salvo que un esquema defina el formato.

Los valores vacíos también necesitan una política. Un campo CSV vacío puede convertirse en "", null o un miembro omitido. Estas salidas no son equivalentes. Una cadena vacía puede ser un valor en blanco conocido. null puede indicar que no existe valor. Un miembro ausente puede significar desconocido o no aplicable.

Las cabeceras duplicadas producen asignaciones de objetos no válidas o con pérdidas. Si una fila tiene dos columnas llamadas status, un objeto JSON normal no conserva ambas de forma fiable bajo el mismo nombre. Cambia sus nombres, rechaza el archivo o asigna las filas a matrices con una lista separada de cabeceras.

¿Debe el conversor inferir tipos de datos?

La inferencia de tipos puede producir JSON cómodo, pero añade riesgo. La cadena true puede ser una respuesta o una etiqueta literal. 0007 puede ser un identificador. Un espacio vacío puede representar datos ausentes o un valor deliberadamente vacío.

Usa tipos dirigidos por un esquema cuando sea posible. Define cada columna como cadena, entero, decimal, booleano, fecha, marca temporal o valor anulable. Rechaza entradas inválidas en vez de adivinarlas. Conserva el texto original para auditoría cuando las transformaciones tengan impacto empresarial.

Si no existe un esquema, conservar cadenas ofrece el valor predeterminado más seguro. Mantiene el contenido léxico y los ceros iniciales. Un proceso validado posterior puede convertir los campos seleccionados.

Para valores numéricos, decide cómo tratar la precisión decimal. La coma flotante de JavaScript no representa exactamente todas las fracciones decimales ni todos los enteros grandes. Los datos financieros y los identificadores suelen necesitar bibliotecas decimales, cadenas enteras o tipos de precisión arbitraria.

El modelo de datos tabulares de W3C describe una forma más rica de anotar tablas con metadatos y tipos. Un conversor ligero puede no implementar metadatos CSVW. El modelo muestra por qué importa el contexto del esquema.

¿Cómo debe funcionar la codificación de caracteres?

JSON intercambiado entre sistemas usa Unicode y normalmente UTF-8. Los archivos CSV pueden llegar en UTF-8, UTF-16, páginas de códigos Windows u otra codificación antigua. Leer bytes con el decodificador incorrecto produce caracteres de sustitución o texto alterado.

El estándar de codificación WHATWG define etiquetas y comportamiento de decodificación del navegador. Normaliza el tratamiento de codificaciones antiguas usadas en la web. También explica los modos de error y el comportamiento de sustitución.

Usa UTF-8 para exportaciones nuevas. RFC 3629 define UTF-8 como un formato de transformación Unicode. Una marca de orden de bytes puede aparecer en archivos CSV UTF-8 aunque UTF-8 no la necesite. Algunos analizadores conservan la marca como parte de la primera cabecera si no la eliminan.

Antes de convertir, inspecciona nombres con acentos, alfabetos no latinos, emoji, símbolos monetarios y puntuación tipográfica. Después, compara valores representativos. Una coincidencia de filas no detecta daños en caracteres.

Cuando desconozcas la codificación, pregunta al productor o usa una detección controlada. La detección automática es probabilística. Puede devolver un resultado razonable pero incorrecto para archivos cortos o casi totalmente ASCII.

¿Cómo funcionan los delimitadores y las comillas?

Una coma dentro de un campo suele necesitar comillas dobles. Una comilla doble dentro de un campo entrecomillado suele escaparse mediante otra comilla. Un campo entrecomillado puede incluir un salto de línea. Un analizador que divide cada línea por comas falla en estos casos válidos.

Este registro tiene tres campos aunque contiene una coma adicional:

42,"Mumbai, Maharashtra","Approved"

Este registro contiene una comilla dentro del segundo campo:

43,"The value is ""ready""","Approved"

Usa un analizador CSV probado con delimitador, comillas, escape, cabecera y final de línea configurables. No uses una expresión regular simple para CSV arbitrario.

Algunos países usan punto y coma porque la coma es el separador decimal. Los datos separados por tabulaciones pueden usar .tsv. Un conversor puede detectar candidatos. Debe mostrar el delimitador elegido y permitir que el usuario lo corrija.

¿Qué es la inyección de fórmulas CSV?

Las aplicaciones de hojas de cálculo pueden interpretar como fórmulas las celdas que empiezan con ciertos caracteres. Si un atacante controla un campo, abrir el CSV exportado puede activar fórmulas o acciones externas. El comportamiento depende de la aplicación y de las elecciones del usuario.

La guía de inyección CSV de OWASP explica que las celdas que empiezan con =, +, - o @ pueden interpretarse como fórmulas. Los delimitadores y saltos de línea también pueden permitir que los datos controlados inicien una celda nueva.

La conversión de CSV a JSON no ejecuta fórmulas de hojas de cálculo. Sin embargo, una exportación posterior de JSON a CSV puede recrear celdas peligrosas. Trata el texto con forma de fórmula como entrada no fiable. Aplica una política de salida adecuada para la hoja de destino y conserva el significado.

Las estrategias de escape tienen costes. Añadir un apóstrofo puede impedir la fórmula en algunas aplicaciones. También cambia el texto guardado y puede aparecer en otros consumidores. Poner el campo entre comillas no siempre basta. Las hojas pueden evaluar su contenido tras analizar el CSV. Sigue la guía de seguridad actual de la aplicación de destino.

No abras archivos CSV desconocidos en una hoja solo para inspeccionarlos. Usa un analizador orientado a texto y una vista previa. Restringe enlaces externos y contenido activo según la política de la organización.

¿Qué necesita el procesamiento privado en el navegador?

Un flujo local fiable necesita límites claros. La conversión debe leer el archivo elegido localmente, evitar cargas de contenido, crear la salida localmente y declarar la telemetría. La aplicación debe usar una política de seguridad restrictiva y dependencias mantenidas.

El usuario también tiene responsabilidades:

  • Usa un dispositivo fiable y un navegador compatible.
  • Elimina extensiones con acceso innecesario a páginas.
  • Confirma el origen del sitio y la seguridad del transporte.
  • Evita equipos compartidos o públicos para registros sensibles.
  • Mantén actuales las actualizaciones del sistema y del navegador.
  • Guarda los resultados descargados en una ubicación aprobada.
  • Elimina copias temporales según la política.

Desconectar la red ofrece confianza adicional solo cuando la página ya tiene todo el código necesario. No elimina código malicioso ya cargado. Tampoco protege contra software local malicioso, extensiones, capturas, carpetas sincronizadas o acceso posterior a la red.

Las herramientas de desarrollo pueden mostrar solicitudes durante una prueba. Una observación no es una garantía formal. Las solicitudes pueden depender del tipo de archivo, errores, tiempo, configuración o actualizaciones. La revisión independiente, las compilaciones reproducibles, los controles de seguridad y la aprobación organizativa ofrecen pruebas más fuertes.

Flujo seguro de CSV a JSON

Usa este proceso para una conversión controlada:

  1. Copia el archivo de origen a una ubicación de trabajo protegida.
  2. Registra el nombre, el tamaño y un resumen fiable opcional.
  3. Confirma la codificación y el delimitador esperados.
  4. Decide si la primera fila contiene cabeceras.
  5. Revisa cabeceras duplicadas, vacías e inesperadas.
  6. Selecciona una política que conserve cadenas o siga un esquema.
  7. Previsualiza filas representativas antes de convertir todo.
  8. Convierte con la herramienta de CSV a JSON.
  9. Valida la sintaxis JSON generada.
  10. Compara cantidades de filas y campos críticos.
  11. Guarda el resultado en la ubicación aprobada.
  12. Conserva o elimina el origen según las reglas de retención.

La vista previa debe incluir primeras y últimas filas, registros con comillas, campos multilínea, caracteres no ASCII, valores vacíos y valores de longitud máxima. Un muestreo aleatorio ayuda en datos grandes. Los casos límite dirigidos ofrecen mejor cobertura.

¿Cómo validas el resultado JSON?

Empieza por la sintaxis. El validador JSON puede encontrar JSON mal formado. La validación sintáctica confirma la gramática. No confirma campos, tipos, intervalos ni relaciones esperados.

Después, valida la estructura. Un esquema JSON o de aplicación puede exigir nombres, tipos, formatos, límites y anidación. Comprueba que cada fila se convirtió en un elemento de matriz. Confirma que ningún registro desapareció por un error de análisis.

Usa el formateador JSON para una inspección legible. El formato cambia espacios, pero no el significado de los datos. No deduzcas la corrección a partir de una sangría atractiva.

Compara la salida esperada y real con el comparador JSON cuando tengas una muestra fiable. Decide si importan el orden de miembros, el orden de matrices, las formas numéricas y los miembros ausentes.

La validación debe incluir:

Comprobación Prueba sugerida
Conservación de filas La cantidad de filas del origen equivale a la longitud JSON
Asignación de cabeceras Existen las claves esperadas y se resuelven los duplicados
Integridad de caracteres Coinciden valores Unicode representativos
Conservación de tipos Los identificadores mantienen ceros y dígitos largos
Valores ausentes Vacío, null y ausencia siguen la política
Campos multilínea Los saltos permanecen dentro de un valor
Texto con forma de fórmula La política registra celdas potencialmente activas
Integridad del archivo Un resumen opcional identifica el origen revisado

Para migraciones importantes, crea aserciones automáticas. Valida cantidades, claves obligatorias, identificadores únicos, totales, fechas mínimas y máximas, y registros conocidos. Compara los valores agregados con el sistema de origen.

Flujo seguro de JSON a CSV

La conversión inversa necesita una forma tabular. Una matriz JSON de objetos planos se asigna de forma natural a filas. Los objetos y matrices anidados necesitan una política de aplanado.

Puedes unir rutas con puntos, como address.city. Puedes serializar valores anidados como texto JSON. Puedes crear varios archivos CSV relacionados. Cada elección afecta la reimportación y la edición humana.

Elige un orden estable de columnas. Decide cómo representar miembros ausentes. Pon los campos entre comillas según las reglas CSV elegidas. Aplica la política de inyección antes de usar hojas de cálculo. Exporta UTF-8 e indica si existe una marca de orden de bytes.

No supongas que todos los miembros aparecen en el primer elemento. Examina el esquema permitido o todos los registros. De lo contrario, pueden desaparecer campos posteriores. Para archivos muy grandes, usa un esquema para transmitir filas sin cargar primero todos los objetos.

Rendimiento y memoria con archivos grandes

La memoria del navegador es finita. Leer un archivo de varios gigabytes, analizarlo en objetos y serializar otra copia completa puede necesitar varias veces su tamaño. La página puede dejar de responder o el proceso puede terminar.

Un conversor escalable puede leer flujos o bloques, analizar registros de forma incremental y escribir la salida de igual forma. Los campos entrecomillados con saltos de línea complican los límites de bloques. El analizador debe conservar el estado entre bloques.

Usa una herramienta de escritorio, un proceso de línea de comandos revisado o un flujo controlado del servidor cuando el archivo supere los límites. “Sin carga” no exige un navegador. Un script local también mantiene los datos en el dispositivo y admite transmisión y mejores controles de auditoría.

Prueba el rendimiento con archivos representativos no sensibles. Supervisa la memoria y el tamaño de salida. Define un tamaño máximo de entrada en la interfaz. No prometas compatibilidad con todos los archivos solo porque el selector los acepta.

Errores comunes de conversión

Error 1: Dividir líneas por comas

Las comas entrecomilladas y los campos multilínea rompen una división simple. Usa un analizador CSV.

Error 2: Inferir todos los campos que parecen numéricos

Los identificadores, códigos postales, referencias de cuenta y teléfonos pueden perder ceros o precisión. Conserva cadenas salvo que un esquema indique otra cosa.

Error 3: Suponer que la primera fila es una cabecera

Algunos archivos no tienen cabecera. Otros contienen líneas de título antes de la tabla. Previsualiza y selecciona la fila de cabecera de forma explícita.

Error 4: Ignorar cabeceras duplicadas

Los objetos JSON no conservan de forma fiable dos valores bajo el mismo nombre. Rechaza o cambia los duplicados mediante una regla documentada.

Error 5: Afirmar privacidad completa solo por el procesamiento local

El procesamiento local reduce transferencias rutinarias. No protege un dispositivo, navegador, extensión, dependencia o ubicación de almacenamiento comprometidos.

Error 6: Validar solo la sintaxis JSON

Un JSON válido puede contener filas incorrectas, texto dañado, identificadores alterados o tipos equivocados. Valida el esquema empresarial y compara el origen.

Error 7: Abrir una salida no fiable en una hoja de cálculo

Los campos con forma de fórmula pueden activarse en aplicaciones de hojas. Aplica una política de exportación segura e inspecciona el entorno de destino.

¿Cuándo debes evitar una herramienta en línea?

Evita una herramienta pública no aprobada si el archivo contiene credenciales, claves de cifrado, datos médicos, datos financieros regulados, información empresarial sin publicar, registros privados de clientes u otro contenido restringido. Usa el entorno aprobado por la organización.

Evita también una conversión interactiva única cuando la transformación deba ser reproducible. Un script revisado con código versionado, pruebas, registros y resúmenes puede aportar pruebas de migración más sólidas.

Una herramienta pública del navegador funciona mejor con datos no sensibles, muestras, aprendizaje, diagnóstico y transformaciones transparentes dentro de límites documentados. Sustituye registros reales por ejemplos sintéticos cuando diagnostiques una estructura.

Preguntas frecuentes

¿Un conversor CSV del navegador carga mi archivo?

Puede no necesitarlo. Un navegador puede leer y convertir localmente un archivo seleccionado. Verifica la declaración y el comportamiento de la aplicación concreta. No supongas que todos los conversores funcionan igual.

¿El procesamiento del navegador es totalmente privado?

Ninguna función demuestra privacidad completa. El procesamiento local reduce transferencias al servidor. También importan la seguridad del dispositivo, las extensiones, el código cargado, la telemetría, las descargas, las copias y las políticas.

¿Los números CSV deben convertirse en números JSON?

Solo cuando un esquema los identifique como números y el consumidor conserve su intervalo y precisión. Mantén identificadores y valores ambiguos como cadenas.

¿Cómo deben convertirse los campos CSV vacíos?

Elige una política documentada. Una cadena vacía, null y un miembro ausente significan cosas distintas. Aplica siempre la misma regla.

¿CSV puede contener saltos de línea dentro de campos?

Sí. Las reglas CSV comunes admiten saltos dentro de campos entrecomillados. Un analizador conforme debe tratarlos como parte de un único campo del registro.

¿Por qué mi primera clave JSON contiene un carácter extraño?

El CSV puede empezar con una marca de orden de bytes que el analizador conservó en la primera cabecera. Usa el decodificador correcto y elimina la marca cuando proceda.

¿JSON formateado es más válido que JSON compacto?

No. Los espacios fuera de las cadenas no cambian los valores JSON. Ambas formas pueden ser válidas. Usa un validador para sintaxis y un esquema para significado.

¿Puedo convertir un documento JSON anidado en un archivo CSV?

Sí, pero necesitas una política de aplanado. Las matrices anidadas pueden crear filas repetidas, celdas serializadas o tablas relacionadas separadas. Documenta la elección.

Regla final de privacidad y validación

La conversión local puede eliminar una carga rutinaria y mantener el procesamiento ordinario en el dispositivo. Trata este diseño como un control de privacidad. No lo trates como garantía completa de seguridad.

Define el dialecto CSV, la codificación, la regla de cabecera, la política de tipos, la política de vacíos y el esquema de salida. Después, valida sintaxis, cantidades, Unicode, identificadores, casos límite y celdas con forma de fórmula. Conserva el original hasta que el resultado supere estas comprobaciones.