Convierta el archivo JSON en un archivo CSV y muestre los datos usando Node.js

Hay tantas formas de almacenar datos para una mejor comprensión para propósitos individuales, en algunos casos, los archivos JSON serán más adecuados, en algunos casos, los archivos CSV, y también hay muchos otros tipos, como XML, etc. En este artículo , convertiremos los datos del archivo JSON en datos del archivo CSV y también los mostraremos a través de Node.js.

JSON significa Notación de objetos de JavaScript. Es un formato de intercambio de datos basado en texto para mantener la estructura de los datos. JSON es el reemplazo del formato de intercambio de datos XML en JSON. Es fácil estructurar los datos en comparación con XML. Admite estructuras de datos como arrays y objetos y los documentos JSON que se ejecutan rápidamente en el servidor. También es un formato independiente del idioma que se deriva de JavaScript.

CSV (valores separados por comas) es un formato de archivo simple que se utiliza para almacenar datos tabulares, como una hoja de cálculo o una base de datos. El archivo CSV almacena datos tabulares (números y texto) en texto sin formato. Cada línea del archivo es un registro de datos. Cada registro consta de uno o más campos, separados por comas. El uso de la coma como separador de campo es el origen del nombre de este formato de archivo.

Almacenamiento de datos en CSV: hay un csv-writer que es un módulo que se utiliza para almacenar datos en CSV.

Sintaxis:

csv-writer(path,header);
  • ruta: Ruta del archivo para descargar el archivo CSV.
  • encabezado: Nombres de columna en un archivo CSV como un diccionario.

Acercarse:

  • Importe csv-writer después de instalarlo.
  • Crea un objeto para él.
  • Mencione los valores para cada columna en una variable constante
  • Use csvWriter.writeRecords (resultados) para escribir los datos en CSV porcsv_writer_object.writeRecords(constant variable)

Siga los pasos a continuación para convertir un archivo JSON en un archivo CSV:

  • Instalación de dependencias:
    npm install csv-writer
  • Ejemplo

    código1.js

    // Import csv-writer
    import csvwriter from 'csv-writer'
      
    var createCsvWriter = csvwriter.createObjectCsvWriter
      
    // Passing the column names intp the module
    const csvWriter = createCsvWriter({
      
      // Output csv file name is geek_data
      path: 'geek_data.csv',
      header: [
      
        // Title of the columns (column_names)
        {id: 'id', title: 'ID'},
        {id: 'name', title: 'NAME'},
        {id: 'age', title: 'AGE'},
      ]
    });
      
    // Values for each column through an array
    const results = [
      {
        id: '7058',
        name: 'Sravan Kumar Gottumukkala',
        age: 22
      }, {
        id: '7004',
        name: 'Sudheer',
        age: 29
      }, {
        id: '7059',
        name: 'Radha',
        age: 45
      },{
        id: '7060',
        name: 'vani',
        age: 34
      }
        
    ];
    // Writerecords function to add records
    csvWriter
      .writeRecords(results)
      .then(()=> console.log('Data uploaded into csv successfully'));
  • Para iniciar la conversión, ejecute el siguiente comando.
    node code1.js
  • Producción:

Mostrar datos en CSV: A veces tendremos que mostrar el archivo JSON en el servidor antes de convertir JSON a archivo CSV para verificar los datos.

Acercarse:

  1. Importar módulos fs y csv-parser.
  2. Cree objetos para estos dos (fsdata y csvdata).
  3. Cree un flujo de datos utilizando el método llamado createReadStream con el método de canalización pasando el objeto csv-parser .

Sintaxis:

fs_object.createReadStream('file_name.csv'),pipe(csv_parser_object())
  • Ejemplo:

    Código1.js

    // Importing csv-parser into csvdata
    import csvdata from 'csv-parser'
      
    // Importing csv-parser into fsdata
    const fsdata = require('fs');
      
    // Reading csv data row wise from geek_data csv file
    fsdata.createReadStream('geek_data.csv')
      .pipe(csvdata())
      .on('data', (row) => {
      
        // Display data row by row
        console.log(row);
      })
      .on('end',() => {
        console.log('success');
      });
  • Para mostrar los datos JSON, ejecute el siguiente comando.
    node code1.js
  • Producción:

Convertir JSON a CSV: en el primer método, pasamos los datos JSON dentro de nuestro script, pero también podemos adjuntar el archivo JSON que ya se creó.

  1. Se utiliza para procesar los datos en menos tiempo.
  2. Es similar a la estructura de array.
  3. JSON es legible y escribible por humanos, que es un formato de intercambio de datos basado en texto liviano
  4. Aunque se deriva de un subconjunto de JavaScript, es independiente del lenguaje.
  5. Por lo tanto, el código para generar y analizar datos JSON se puede escribir en cualquier otro lenguaje de programación.

Sintaxis:

csvjson_object.toCSV(fileContent);

Acercarse :

  1. Definir los módulos en Node.js
  2. Leer un archivo usando el paquete fs
  3. Use el método toCSV para convertir JSON a CSV
  4. Escriba estos datos en un archivo CSV usando el paquete fs

Siga los pasos a continuación para convertir un archivo JSON en un archivo CSV:

  • Instalación de dependencias:

    npm install csvjson fs
  • Ejemplo:

    código1.js

    // Import package csvjson
    import csvjson from 'csvjson'
      
    // Import fs package(file system) 
    // for read and write files
    import fs from 'fs'
    const readFile = fs.readFile;
    const writeFile = fs.writeFile;
      
    // Reading json file(filename -data.json)
    readFile('./data.json', 'utf-8', (err, fileContent) => {
        if (err) {
            // Doing something to handle the error or just throw it
            console.log(err); 
            throw new Error(err);
        }
      
        // Convert json to csv function
        const csvData = csvjson.toCSV(fileContent, {
            headers: 'key'
        });
      
        // Write data into csv file named college_data.csv
        writeFile('./college_data.csv', csvData, (err) => {
            if(err) {
                // Do something to handle the error or just throw it
                console.log(err); 
                throw new Error(err);
            }
            console.log('Data stored into csv file successfully');
        });
    });
  • Para iniciar la conversión, ejecute el siguiente comando.
    node code1.js
  • Producción:

Publicación traducida automáticamente

Artículo escrito por sravankumar8128 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *