path 模块是 Node.js 官方提供的、用来处理路径的模块。它提供了一系列的方法和属性,用来满足用户对路径的处理需求。
1.path.join()方法,用来将多个路径片段拼接成一个完整的路径字符串
path.join([...paths])
const path = require('path')
const pathStr = path.join('/a','/b/c','../','./d','e')
// '../'会抵消掉前一层路径'/c'
// './'没有这个功能
console.log(pathStr) // 输出 a\b\d\e
const pathStr2 = path.join( __dirname,'./files/1.txt')
console.log(pathStr2) // 输出 当前文件所处目录\files\1.txt
fs.readFile(__dirname + '/files/1.txt','utf8',function(err, dataStr){
if(err){
return console.log(err.message)
}
console.log(dataStr)
})
2.path.basename() 方法,用来从路径字符串中,将文件名解析出来
path.basename(path[,ext])
参数解读:
path<string>必选参数,表示一个路径的字符串
ext <string>可选参数,表示文件扩展名
返回:<string>表示路径中的最后一部分
const path = require('path')
//使用 path.basename()方法,可以从一个文件路径中,获取到文件的名称部分
const fpath ='/a/b/c/index.html' // 文件的存放路径
var fullName = path.basename(fpath)
console.log(fullName) // 输出 index.html
var namewithoutExt = path.basename(fpath,'.html')
console.log(nameWithoutExt) // 输出 index
3.path.extname()方法,可以获取路径中的扩展名部分
path.extname(path)
参数解读:
path <string>必选参数,表示一个路径的字符串
返回:<string>返回得到的扩展名字符串
const fpath ='/a/b/c/index.html' // 路径字符串
const fext = path.extname(fpath)
console.log(fext) // 输出 .html