sag*_*ara 8 javascript node.js
需要读取特定目录中的文件列表,其中Date由Node js中的降序或升序修改.
我试过下面的代码,但无法得到解决方案.
fs.readdir(path, function (err, files) {
if (err) throw err;
else {
var res = [];
files.forEach(function (file) {
if (file.split('.')[1] == "json") {
fs.stat(path, function (err, stats) {
});
res.push(file.substring(0, file.length - 5));
}
});
}
Run Code Online (Sandbox Code Playgroud)
stats参数将mtime作为修改时间?
有没有办法获得修改日期的文件.
Gau*_*dhi 18
mtime给出了Unix时间戳.您可以轻松地将日期转换为日期,
const date = new Date(mtime);
对于您的排序问题,您可以执行以下操作
var dir = 'mydir/';
fs.readdir(dir, function(err, files){
files = files.map(function (fileName) {
return {
name: fileName,
time: fs.statSync(dir + '/' + fileName).mtime.getTime()
};
})
.sort(function (a, b) {
return a.time - b.time; })
.map(function (v) {
return v.name; });
});
Run Code Online (Sandbox Code Playgroud)
files将按升序排列的文件数组.
对于降,只需更换a.time有b.time,像b.time - a.time
sag*_*ara -4
我已经使用排序操作得到了答案。
fs.stat(path, function (err, stats) {
res.push(file.substring(0, file.length - 5) + '&' + stats.mtime);
});
Run Code Online (Sandbox Code Playgroud)
将 mtime 存储到一个数组中,并使用下面 url 中的排序技术对该数组进行排序。