Adding double quotes to all elements in csv

Using powershell:

import-csv 1.csv | export-csv 2.csv -NoTypeInformation -Encoding UTF8

content of 1.csv will be stored as 2.csv with double quotes.

Using nodejs:

install modules:

npm install fs
npm install csv-parse

Save below code as .js file:

const parse = require('csv-parse/lib/sync');

let fs = require("fs");
console.log("sourece File: " + process.argv[2]);

let input = fs.readFileSync(process.argv[2]);
let temp="";

const records = parse(input, {
    columns: true,
    skip_empty_lines: true
})

let data = "";
let length = Object.keys(records[0]).length;
let count = 0;
for (const property in records[0]) {
    {
        if (count === length - 1) {
            data = data + `${property}\r\n`;
        } else {
            data = data + `${property},`;
        }
    };
    ++count
}

records.forEach(function(i, index) {
    let count = 0;
    let length = Object.keys(i).length;
    for (const property in i) {
        if (count === length - 1) {
            if ((i[property]).includes('"')) {
				temp=(i[property]).replace(/"/g,'""');
                data = data + `"${temp}"\r\n`;
            } else {
                data = data + `"${i[property]}"\r\n`;
            }
        } else {
            if ((i[property]).includes('"')) {
				temp=(i[property]).replace(/"/g,'""');
                data = data + `"${temp}",`;
            } else {
                data = data + `"${i[property]}",`;
            }
        }
        count++
    }
});

fs.writeFileSync(process.argv[3], data);
console.log("Destination File: " + process.argv[3]);

Run the programme:

node generator.js 1.csv 2.csv

Here the content of 1.csv will be stored as 2.csv with double quotes for each value.

Create a batch file and just double click it when ever you want to convert 1.csv to 2.csv