如何在nodejs目录中获取第一个扩展名为.txt的文件
How to get the first file with a .txt extension in a directory with nodejs?
我所有文件所在的目录是:"/usr/home/jordan",我在那里有很多文件(在目录本身中,但有一个文件的扩展名为.txt。
使用nodejs和fs,我想将第一个扩展名为txt的文件(或任何文件)放入"mytxtfilepath"中。我在整个目录中只有一个.txt文件(在许多其他文件中,但具有不同的扩展名)。单个.txt文件可以命名为ANYTING,我不能保证在任何给定的时间名称是什么,只能保证它以.txt结尾:
var homedir = "/usr/home/jordan";
var mytxtfilepath=homedir + "???????";
fs.readfile(mytxtfilepath, function(err,data) {
console.log(data);
});
如何在不硬编码txt文件本身名称的情况下将正确的路径放置到txt文件?
var files = fs.readdirSync(homedir);
var path = require('path');
for(var i in files) {
if(path.extname(files[i]) === ".txt") {
//do something
}
}
您也可以使用Glob模块。它对我很管用!
var glob = require( 'glob' );
var myPath= "/fileFolder/**/*.txt";
glob(myPath, function (er, files) {
// Files is an array of filenames.
// Do something with files.
})
您可以使用fs.readder列出文件并找到以.txt
:结尾的文件
var myPath = "/usr/home/jordan";
fs.readdir(path, function(fileNames) {
for(var i = 0; i < fileNames.length; i++) {
var fileName = fileNames[i];
if(path.extname(fileName) === ".txt") {
fs.readfile(path.join(myPath,fileName), function(err,data) {
console.log(data);
});
break;
}
}
}
);
请注意,这需要路径,因此在顶部添加var path = require("path")
。
您可以使用fs.readdir和path.extname
var fs = require('fs')
, path = require('path');
function getFileWithExtensionName(dir, ext) {
fs.readdir(dir, function(files){
for (var i = 0; i < files.length; i++) {
if (path.extname(files[i]) === '.' + ext)
return files[i]
}
});
}
var homedir = "/usr/home/jordan";
var mytxtfilepath= getFileWithExtensionName(homedir, 'txt')
fs.readfile(mytxtfilepath, function(err,data) {
console.log(data);
});
惰性解决方案:
npm install --save readdir
然后
const {read} = require('readdir');
read("/usr/home/jordan", "**/*.txt", (err, paths) =>
console.log(paths)
);
相关文章:
- 而循环只设置php中输入字段中的第一个值
- TableExport jquery插件:文件名和扩展名问题
- 未捕获的类型错误:无法读取属性'addEventListener'的null chrome扩展名
- 从Chrome扩展名中的popup.html文件在background.js文件中运行一个函数
- 创建/下载一个带有chrome扩展名的excel文件
- 创建/下载一个带有chrome扩展名的.html文件
- 使用 querySelectorAll 获取具有该类名的所有元素,而不仅仅是第一个
- 使用交叉骑手时,使用多个文件而不是一个扩展名.js文件
- 如何在Shiny中创建一个弹出窗口来警告用户选择一种类型的文件扩展名
- 给定一个URL作为字符串,如何只提取域和扩展名
- JavaScript Regex替换文件扩展名之前的最后一个下划线和数字
- 列出一个具有chrome扩展名的本地目录
- 当一个JS文件需要另一个没有. JS扩展名的JS文件时,出现404
- 对js文件进行gzip压缩会创建一个归档文件,而不是在文件输出上附加gz扩展名
- 如何自动选择“模式”对于Ace编辑器,给出一个文件扩展名
- 我如何缓存一个文件的名称,而不是使用.htaccess扩展名
- 响应扩展-隐藏所有列,但第一个
- 如果文件扩展名不在(exe|js|htaccess)内,你如何编写一个Javascript Regex匹配
- 如何通过chrome扩展名中的javascript文件访问驻留在另一个javascript文件中的对象
- 将输出图像保存到另一个目录中,并使用新的文件名和扩展名