CSV no tiene una especificacion que todos sigan, que es exactamente por lo que tantos convertidores discreparon entre si en casos extremos. Esta herramienta sigue RFC 4180 y declara el unico lugar donde se desvia de ella, en vez de elegir reglas en silencio.
Usando el convertidor JSON a CSV
Elige una direccion, establece el delimitador (coma, punto y coma o tabulador) y si la primera fila contiene nombres de columnas, luego presiona Convertir. Ir a CSV necesita un array de objetos, la unica forma de JSON que es genuinamente una tabla; un solo objeto tambien se acepta, tomado como una tabla de una fila.
Convirtiendo
[{"name":"Doe, Jane","age":30,"note":null},{"name":"Smith","age":25,"note":"line1\nline2"}]
produce:
name,age,note
"Doe, Jane",30,
Smith,25,"line1
line2"
Un campo se entrecomilla solo cuando realmente lo necesita: la coma dentro
de “Doe, Jane” fuerza comillas, el salto de linea incrustado en la segunda
nota fuerza comillas, y un valor simple como Smith se deja sin comillas.
Que pasa con los valores anidados y null
Un objeto o array anidado no tiene forma CSV en absoluto, una cuadricula
de valores simples, por lo que se escribe en la celda como su propio texto
JSON en vez de ser descartado o extendido en columnas inventadas. null
se convierte en un campo vacio, lo que si significa que un null y una
cadena vacia son indistinguibles una vez que llegan a CSV. Ambas elecciones
estan declaradas en la pagina en vez de descubiertas despues.
Por que cada campo regresa como cadena
Convirtiendo de CSV, cada valor se mantiene como cadena, deliberadamente.
Un archivo CSV no registra tipos en absoluto, asi que adivinarlos es como
un codigo postal de 01234 pierde su cero inicial y se convierte en
1234, y como un identificador largo se redondea en el momento en que
algo intenta leerlo como numero. Convertir las columnas que conoces en
numeros despues es una linea de codigo; un identificador silenciosamente
redondeado no es recuperable. Leyendo de vuelta el ejemplo anterior, age
regresa como la cadena "30", no el numero 30, y el campo vacio note
regresa como "", no null.
Intercambiar direccion
El intercambio mueve la salida actual a la entrada y cambia la direccion, asi puedes verificar inmediatamente que un documento hace el viaje redondo a traves de CSV y de vuelta como esperas, sin reescribir nada. Prueba con datos que tengan una coma dentro de un campo o un cero inicial en un ID, ya que esos son exactamente los casos que la mayoria de los convertidores hacen mal.