>我有几个数组,其中包含我想导出的数据,每个数组到一个txt文件,以便使用MATLAB进行分析。
假设我的数组是:
var xPosition = [];
// some algorithm that adds content to xPosition
// TODO: export array into a txt file let's call it x_n.txt
每行存储数组的每个元素会很棒。
我在这篇文章中找到了解决我问题的指南。以下代码是我最终使用的代码:
var fs = require('fs');
var xPosition = [];
// some algorithm that adds content to xPosition
var file = fs.createWriteStream('./positions/x_n.txt');
file.on('error', function(err) { /* error handling */ });
xPosition.forEach(function(v) { file.write(v + 'n'); });
file.end();
您找到的解决方案有效,但这是我的做法:
var fs = require('fs');
var xPosition = [1,2,3]; // Generate this
var fileName = './positions/x_n.txt';
fs.writeFileSync(fileName, xPosition.join('n'));
这使用节点的同步文件写入功能,非常适合您的目的。您不必打开或关闭文件句柄等。只有当我有千兆字节的数据要写出时,我才会使用流。