我正在尝试将我在 Ruby 中完成的旧脚本“翻译”为 node.js。其中之一是关于 CSV 解析,我停留在第一步 - 将文件加载到字符串中。
这会将我的文件内容打印到控制台:
fs = require('fs');
fs.readFile("2015 - Best of.csv", 'utf8', function (err,data) {
if (err) {
return console.log(err);
}
console.log(data);
});
但出于某种原因我无法将数据捕获到变量中:
fs = require('fs');
var x = "";
fs.readFile("2015 - Best of.csv", 'utf8', function (err,data) {
if (err) {
return console.log(err);
}
x = x + data;
});
console.log(x);
如何将(函数的)“数据”变量存储到(全局)“x”变量中?
最佳答案
它正在工作。
问题是你在 x 被填满之前记录它。由于调用是异步的,x 变量将只有函数内部字符串的内容。
还可以看到:fs.readFileSync函数。
但是,我建议您更加熟悉 Node 的异步功能。
试试这个:
fs = require('fs');
var x = "";
fs.readFile("2015 - Best of.csv", 'utf8', function (err,data) {
if (err) {
return console.log(err);
}
x = x + data;
console.log(x);
});
关于node.js - 如何将文件内容复制到字符串中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33263457/