Conversor de JSON a CSV
Pega un arreglo JSON de objetos abajo. Las claves se unen entre todos los objetos para la fila de encabezado, las claves faltantes se convierten en celdas vacías, y los campos de salida se entrecomillan solo cuando realmente lo necesitan. Nada de lo que pegues sale de tu navegador.
Entrecomillar solo cuando realmente hace falta
Escribir CSV correctamente es la imagen espejo de analizarlo: un
campo solo necesita envolverse en comillas dobles si su texto
de otro modo se leería mal — porque contiene el delimitador,
una comilla doble o un salto de línea. Esta herramienta revisa
cada campo individualmente y entrecomilla exactamente los que lo
necesitan, duplicando cualquier " literal dentro de
un campo entrecomillado (" se convierte en "") para que nunca pueda confundirse con la comilla
de cierre. Omitir comillas innecesarias mantiene la salida
legible; nunca omitir una comilla necesaria la mantiene
correcta.
Además, esta página usa punto y coma como delimitador predeterminado en vez de coma, porque así es como Excel en español espera el CSV al importarlo: la coma ya está ocupada como separador decimal en este locale, así que un CSV delimitado por comas suele importarse mal, con todo el archivo metido en una sola columna. Puedes cambiar al selector si necesitas coma o tabulación.
Ejemplo práctico
Entrada:
[
{"nombre": "Smith, John", "nota": "tiene \"comillas\""},
{"nombre": "Lee"}
]
El nombre del primer objeto contiene una coma y su nota contiene comillas dobles literales; el segundo
objeto no tiene ninguna clave nota. Esta herramienta
produce (con punto y coma como delimitador):
nombre;nota "Smith, John";"tiene ""comillas""" Lee;
— nombre y nota tuvieron que
entrecomillarse en la fila uno por la coma y las comillas
incrustadas, las comillas dobles "" conservan las
marcas de comillas literales, y la nota faltante de Lee es simplemente una celda vacía en vez de un
fallo o una fila perdida. Pega esta salida exacta en el conversor de CSV a JSON
(con el mismo delimitador seleccionado) y recuperas los dos
objetos originales.
Preguntas frecuentes
¿Qué pasa si mis objetos no tienen todos las mismas claves?
Eso es normal y se gestiona: la fila de encabezado es la UNIÓN de todas las claves que aparecen en cualquier parte del arreglo, en el orden en que se ven por primera vez. Cualquier objeto al que le falte una clave determinada simplemente obtiene una celda vacía en esa columna en vez de provocar un error — nada falla, y no se pierde ningún dato de otros objetos.
¿Cómo se gestionan los objetos y arreglos anidados?
Los objetos anidados se aplanan en columnas con notación de punto — {"user":{"name":"Ada"}} se convierte en una columna llamada literalmente user.name. Los arreglos se mantienen como una sola celda que contiene su texto JSON (p. ej. ["dev","ops"]), ya que una lista no tiene una correspondencia obvia de columna por elemento. Esto mantiene cada valor visible en el CSV en vez de descartar algo en silencio.
¿Por qué algunos de mis campos de salida están entre comillas y otros no?
Un campo solo se envuelve en comillas dobles cuando realmente lo necesita: cuando su texto contiene el delimitador que seleccionaste, una comilla doble o un salto de línea. Cualquier comilla doble literal dentro del campo se duplica (" se convierte en "") para que no pueda confundirse con la comilla de cierre. Valores simples como Boston se dejan sin comillas — esto mantiene la salida legible sin dejar de ser inequívoca para cualquier cosa que la vuelva a analizar.
¿Y el delimitador? ¿Por qué punto y coma en vez de coma?
Porque las versiones en español de Excel exportan e importan CSV con punto y coma por defecto: la coma ya está ocupada como separador decimal en este locale ("3,14" es pi, no dos columnas), así que un CSV delimitado por comas sería ambiguo o se abriría mal en una sola columna. Usa el selector encima del campo de entrada si necesitas coma o tabulación en su lugar — el resultado sigue siendo un CSV correctamente entrecomillado en cualquier caso.
¿Esto vuelve a convertirse en el mismo JSON?
Sí — pega el CSV que produce esta herramienta en el conversor de CSV a JSON con el mismo delimitador seleccionado, y obtienes de vuelta los datos originales (las rutas anidadas se convierten en claves con puntos en vez de reconstruirse como objetos anidados, ya que esa reversión es ambigua en general, pero no se pierde ningún valor). Probamos exactamente este round-trip en cada versión.