0
我在zip中有很多.json文件和一个.xml文件。我想在我做fs.createReadStream
时首先查看XML文件,然后对列表进行排序。用fs.createReadStream排序列表
我现在在做什么
fs.createReadStream(savePathZip)
.pipe(unzip.Parse())
.on('entry', function(entry) {
}
我在zip中有很多.json文件和一个.xml文件。我想在我做fs.createReadStream
时首先查看XML文件,然后对列表进行排序。用fs.createReadStream排序列表
我现在在做什么
fs.createReadStream(savePathZip)
.pipe(unzip.Parse())
.on('entry', function(entry) {
}
您可以在返回(如unzip
文档说明)当流“关闭”事件释放出来,解决了一个无极的函数把这个包,并在诺言解决方案会返回排序后的zip文件的最终列表,但您要对其进行排序。一个例子可以是:
function getFileList(savePathZip) {
return new Promise((resolve, reject) => {
var list = []
fs.createReadStream(savePathZip)
.pipe(unzip.Parse())
.on('entry', entry => list.push(entry.path))
.on('error', reject)
.on('close',() => resolve(list))
})
}
然后,你可以调用的函数,它返回数组文件的完整列表和它们却排序你喜欢:
getFileList(zipFilePath).then(fileArray => {
fileArray = fileArray.sort((f1, f2) => {
/* sort the list of files however you like */
})
})