【发布时间】:2015-04-17 02:31:35
【问题描述】:
我有一个简单的 csv 文件
people.csv:
fname, lname, uid, phone, address
John, Doe, 1, 444-555-6666, 34 dead rd
Jane, Doe, 2, 555-444-7777, 24 dead rd
Jimmy, James, 3, 111-222-3333, 60 alive way
我想要做的是获取 CSV 的每一行,将其转换为 JavaScript 对象,将它们存储到数组中,然后将数组转换为 JSON 对象。
server.js:
var http = require('http');
var url = require('url');
var fs = require('fs');
var args = process.argv;
var type = args[2] || 'text';
var arr = [];
var bufferString;
function csvHandler(req, res){
fs.readFile('people.csv',function (err,data) {
if (err) {
return console.log(err);
}
//Convert and store csv information into a buffer.
bufferString = data.toString();
//Store information for each individual person in an array index. Split it by every newline in the csv file.
arr = bufferString.split('\n');
console.log(arr);
for (i = 0; i < arr.length; i++) {
JSON.stringify(arr[i]);
}
JSON.parse(arr);
res.send(arr);
});
}
//More code ommitted
我的问题是,当我在 bufferString 上调用 .split('\n') 方法时,我是否真的将 CSV 行转换为 Javascript 对象,或者有其他方法吗?
【问题讨论】:
-
是的,通过调用
split(),您正在创建一个数组,它是一个 Javascript 对象。 -
你的道路命名有些悲观,加油!
标签: javascript node.js csv