В NodeJS я читаю и анализирую файл .txt с более чем 1,5 млн строк.Каждая строка имеет формат: date,number,number
, где каждая дата - yyyyMMddhhmmss
.Пример строки:
20170506014255,100.01,200.02
Используя jFile , я могу читать и анализировать все строки 1,5M + примерно за 2 секунды ...
var jFile = require('jfile');
var data = [];
var dataFile = new jFile('./dataFile.txt');
dataFile.lines.forEach(function(line) {
data.push(line.split(','));
});
Отлично работает!Но я бы хотел изменить формат даты на другой.Для этого я использую формат даты для преобразования ...
... same as previous, with new line within forEach() ...
var dateFormatter = require('date-format');
dataFile.lines.forEach(function(line) {
let tdata = line.split(',');
tdata[0] = dateFormatter('MM/dd/yy hh:mm:ss', dateFormatter.parse('yyyyMMddhhmmss', tdata[0]));
data.push(tdata);
});
Опять же, это прекрасно работает!В основном. То, что раньше занимало всего 2 секунды, теперь занимает около 25 секунд. Задыхается!
В идеале, файл должен просто иметь даты, отформатированные правильно, но это не в моих руках.
Есть ли более быстрый способ сделать это преобразование?Может быть, есть более нативный подход или просто более быстрый пакет?
Спасибо за понимание!