Node.js NodeJS:读取两个文件,比较部分文件并输出一个已排序的文件
我刚刚启动了node.js并试图解决以下问题。 我使用了fs.readfile和异步模块。但它不能正常工作。 有人能给我看一个示例代码吗? 先谢谢你 Ex)同时读取两个大文件,并按时间将其排序。 应该会产生一个输出文件,如下所示Node.js NodeJS:读取两个文件,比较部分文件并输出一个已排序的文件,node.js,Node.js,我刚刚启动了node.js并试图解决以下问题。 我使用了fs.readfile和异步模块。但它不能正常工作。 有人能给我看一个示例代码吗? 先谢谢你 Ex)同时读取两个大文件,并按时间将其排序。 应该会产生一个输出文件,如下所示 file A : <time=100> james <time=210> jordan <time=300> cam <time=500> joly <time=700> car ..... //this
file A :
<time=100> james
<time=210> jordan
<time=300> cam
<time=500> joly
<time=700> car
.....
//this is a big file, we need to handle a buffer properly
file B :
<time=90> sam
<time=210> foo
<time=350> call
<time=600> seattle
<time=660> usa
.....
//this is a big file, we need to handle a buffer properly
output file :
<time=90> sam
<time=100> james
<time=210> jordan
<time=210> foo
<time=300> cam
<time=350> call
<time=500> joly
<time=600> seattle
<time=660> usa
<time=700> car
...
文件A:
詹姆斯
乔丹
凸轮
欢乐的
汽车
.....
//这是一个大文件,我们需要正确处理缓冲区
文件B:
山姆
福
呼叫
西雅图
美国
.....
//这是一个大文件,我们需要正确处理缓冲区
输出文件:
山姆
詹姆斯
乔丹
福
凸轮
呼叫
欢乐的
西雅图
美国
汽车
...
以下是一个示例:
var fs = require('fs');
var Promise = require('bluebird');
var readFileAsync = function (filePath) {
return new Promise(function (resolve, reject) {
fs.readFile(filePath, 'utf8', function (err, data) {
if (err) {
return reject(err);
}
resolve(data);
});
});
};
var mergeFileData = function () {
return Promise.join(
readFileAsync('fileA'),
readFileAsync('fileB'),
function (dataA, dataB) {
return mergeAndSortData(dataA, dataB)
});
};
您应该自己声明mergeAndSortData
函数