我有一个文本文件,其中包含以下格式的数据:
2014-5-2 17:42:44: Temperature 23.6 C, Humidity 27.4 % RH, Light 624
2014-5-2 17:42:46: Temperature 23.6 C, Humidity 27.4 % RH, Light 621
2014-5-2 17:42:48: Temperature 23.6 C, Humidity 27.3 % RH, Light 631
2014-5-2 17:42:50: Temperature 23.6 C, Humidity 27.3 % RH, Light 623
2014-5-2 17:42:52: Temperature 23.7 C, Humidity 27.3 % RH, Light 622
2014-5-2 17:42:54: Temperature 23.6 C, Humidity 27.4 % RH, Light 649
2014-5-2 17:42:56: Temperature 23.7 C, Humidity 27.3 % RH, Light 637
我需要读取3个数组中的值 - 温度,湿度和光。因此,温度数组的值如下:
[23.6,23.6,23.6,23.6,23.7,......]
湿度和光线阵列的方式相同。
有没有办法读取这样的文本文件并使用node.js将值放在数组中?
答案 0 :(得分:0)
您可以读取文件并逐行解析。结束符号\n
可能是分隔符。
然后您需要的是从每行解析必要的数字。
var fs = require('fs');
fs.readFile('test.txt', 'utf8', function(err, data) {
if (err) throw err;
var temperature = [],
humidity = [],
light = [];
data.split(/\n/).forEach( function( item ) {
temperature.push( Number( item.match(/Temperature(.\d+[.]\d+)/)[1] ) );
// do the same for other ones
});
});