Nodejs 获取文件扩展名
Nodejs get file extension
我有一个包含图像的文件夹,它们可以有不同的格式,但名称始终是唯一的。如果我知道文件名 没有 扩展名(例如 index
和 not index.html
)?我可以检查文件是否存在于我希望存在的每个扩展名中,但这对我来说似乎是一个糟糕的解决方案。
示例:
我知道有一个名为 PIC
的图像,但我不知道扩展名(可以是“.png”、“.jpg”等),因此我无法使用文件命令。
好吧,如果您的 运行 基于 Unix 的系统,这可能是一种解决方法。
var sys = require('util')
var exec = require('child_process').exec;
function puts(error, stdout, stderr) {
console.log(stdout)
}
// this is where you should get your path/filename
var filename = "login";
// execute unix command 'file'
exec("file " + filename, puts);
我针对 PNG 文件和 EJS 文件对其进行了测试,两者都没有扩展名(没有什么区别)。
结果如下:
PNG:
照片:PNG 图像数据,100 x 100,8-bit/color RGB,非隔行扫描
EJS(基本上是 HTML):
登录:HTML 文档,ASCII 文本
您可以检查 file 命令行参数,以便更轻松地使用字符串(例如 file -b filename)。
如果使用 Windows,那么您必须检查 file.
的替代命令
希望对您有所帮助。
var path = require('path')
path.extname('index.html')
// returns
'.html'
这里是引用的答案
Node.js get file extension
已更新:
https://www.npmjs.com/package/file-extension
npm install --save 文件扩展名
允许您指定文件名,然后它将 return 扩展名
我知道我迟到了,但你可以在基于 unix 的系统中使用 grep
命令。
即ls | grep PIC
。它所做的是首先给出工作目录的目录列表,然后从目录列表的输出中搜索短语 PIC 并将其打印出来。 (所以唯一要打印的是文件名)
在Windows中,使用dir PIC.* /b
您可以使用 child_process
执行这些命令,如其他答案所示
我有一个包含图像的文件夹,它们可以有不同的格式,但名称始终是唯一的。如果我知道文件名 没有 扩展名(例如 index
和 not index.html
)?我可以检查文件是否存在于我希望存在的每个扩展名中,但这对我来说似乎是一个糟糕的解决方案。
示例:
我知道有一个名为 PIC
的图像,但我不知道扩展名(可以是“.png”、“.jpg”等),因此我无法使用文件命令。
好吧,如果您的 运行 基于 Unix 的系统,这可能是一种解决方法。
var sys = require('util')
var exec = require('child_process').exec;
function puts(error, stdout, stderr) {
console.log(stdout)
}
// this is where you should get your path/filename
var filename = "login";
// execute unix command 'file'
exec("file " + filename, puts);
我针对 PNG 文件和 EJS 文件对其进行了测试,两者都没有扩展名(没有什么区别)。 结果如下:
PNG: 照片:PNG 图像数据,100 x 100,8-bit/color RGB,非隔行扫描
EJS(基本上是 HTML): 登录:HTML 文档,ASCII 文本
您可以检查 file 命令行参数,以便更轻松地使用字符串(例如 file -b filename)。 如果使用 Windows,那么您必须检查 file.
的替代命令希望对您有所帮助。
var path = require('path')
path.extname('index.html') // returns '.html'
这里是引用的答案
Node.js get file extension
已更新:
https://www.npmjs.com/package/file-extension npm install --save 文件扩展名 允许您指定文件名,然后它将 return 扩展名
我知道我迟到了,但你可以在基于 unix 的系统中使用 grep
命令。
即ls | grep PIC
。它所做的是首先给出工作目录的目录列表,然后从目录列表的输出中搜索短语 PIC 并将其打印出来。 (所以唯一要打印的是文件名)
在Windows中,使用dir PIC.* /b
您可以使用 child_process
执行这些命令,如其他答案所示