nodejs操作xls文件遇到的问题!求帮助!
代码如下:
var excelParser = require('excel-parser');
var path = require('path');
var fs = require('fs');
var prefix = path.join(__dirname,'./resource/');
var getXlsData = funtion (xls,callback){
excelParser.parse({
inFile: xls,
worksheet: 4,
skipEmpty: true,
searchFor: {
type:'loose'
}
},function(err, records){
if(err){
return callback(err,null);
}
//delete records[0];
return callback(null, records);
});
}
// 单独调用getXlsData函数,结果正常,获得一个二位数组值。
getXlsData('/home/test.xls', function(err, ret){
console.log(err);
console.log(ret);
})
// 获得xls文件路径数组
var xlsList = function(callback){
var xls = [];
fs.readdir(prefix, function(err,files){
if(err) process.exit(0);
files.forEach(function(file){
xls.push(path.join(prefix, file, file.concat('.xls')));
});
callback(xls);
})
}
//
xlsList(function(xlss){
xlss.forEach(function(xls)){
getXlsData(xls, function(err, ret){
if(!ret){
console.log(xls)
}
console.log(ret);
});
});
});
1 回复
不知道为啥,循环去读取xls文件,就会报错:{ [Error: ENOENT, open ‘/tmp/temp114610-16284-lm488k/convert.csv’] errno: 34, code: ‘ENOENT’, path: ‘/tmp/temp114610-16284-lm488k/convert.csv’ }; 单独去读xls文件是可以的!