使用Excel导入云开发的数据库,数据量比较大的时候会出现一些问题,我们可以将Excel转成CSV文件,让CSV的第一行为字段名(要是英文哦),然后使用以下代码将CSV文件转成json文件。
第一步,安装Nodejs环境,然后使用vscode新建一个 csv2json.js 的文件,将下面的代码拷贝进来;
第二步,在vscode的资源管理器里右键csv2json.js,在终端中打开,然后输入命令 npm install csvtojson replace-in-file
第三步,把要转化的csv文件放在同一个目录,这里换成你的文件即可,也就是下面的china.csv换成你的csv文件;
第四步,后面的代码都不用管,然后打开vscode终端,输入 node csv2json.js 执行,就会生成两个文件,一个是json文件,一个是可以导入到云开发数据库的data.json
//用vscode打开文件之后,npm install csvtojson replace-in-file
const csv=require('csvtojson')
const replace = require('replace-in-file');
const fs = require('fs')
const csvFilePath='china.csv' //把要转化的csv文件放在同一个目录,这里换成你的文件即可
//后面的代码都不用管,然后打开vscode终端,就会生成两个文件,一个是json文件,一个是可以导入到
csv()
.fromFile(csvFilePath)
.then((jsonObj)=>{
// console.log(jsonObj);
var jsonContent = JSON.stringify(jsonObj);
console.log(jsonContent);
fs.writeFile("output.json", jsonContent, 'utf8', function (err) {
if (err) {
console.log("保存json文件出错.");
return console.log(err);
}
console.log("JSON文件已经被保存为output.json.");
fs.readFile('output.json', 'utf8', function (err,data) {
if (err) {
return console.log(err);
}
var result = data.replace(/},/g, '}\n').replace(/\[/,'').replace(/\]/,'')
fs.writeFile('data.json', result, 'utf8', function (err) {
if (err) return console.log(err);
});
});
});
})
正好需要,非常感谢。