是否有任何API可以从绝对文件路径中检索文件名?
例如,来自"/var/www/foo.txt"
的"foo.txt"
我知道它适用于字符串操作,比如fullpath.replace(/.+\//, '')
,但我想知道有没有一种更“正式”的方式,比如java中的file.getName()
。
NodeJS是否从绝对路径获取文件名?
发布于 2013-11-06 19:59:16
使用path
模块的basename
方法:
path.basename('/foo/bar/baz/asdf/quux.html')
// returns
'quux.html'
Here是取自上述示例的文档。
发布于 2018-05-24 14:24:05
要获取文件名的文件名部分,请使用basename方法:
var path = require("path");
var fileName = "C:\\Python27\\ArcGIS10.2\\python.exe";
var file = path.basename(fileName);
console.log(file); // 'python.exe'
如果您想要不带扩展名的文件名,可以将扩展名变量(包含扩展名)传递给basename方法,告诉Node只返回不带扩展名的名称:
var path = require("path");
var fileName = "C:\\Python27\\ArcGIS10.2\\python.exe";
var extension = path.extname(fileName);
var file = path.basename(fileName,extension);
console.log(file); // 'python'
发布于 2018-07-12 01:58:25
对于那些对从文件名中删除扩展名感兴趣的人,可以使用https://nodejs.org/api/path.html#path_path_basename_path_ext
path.basename('/foo/bar/baz/asdf/quux.html', '.html');
https://stackoverflow.com/questions/19811541
复制相似问题