模块 path模块"/>
node.js核心模块 path模块
node.js核心模块 path模块
简介
官网文档地址:.html#path_path
它是也是node中的核心模块,作用是用来处理路径问题:拼接,分析,取后缀名等等。
使用步骤
- 引入模块。
const path = require('path')
- 使用模块。
path模块常用方法列表
方法 | 作用 |
---|---|
path.basename(path[, ext]) | 获取返回 path 的最后一部分(文件名) |
path.dirname(path) | 返回目录名 |
path.extname(path) | 返回路径中文件的扩展名(包含.) |
path.format(pathObject) | 将一个对象格式化为一个路径字符串 |
path.join([…paths]) | 拼接路径 |
path.parse(path) | 把路径字符串解析成对象的格式 |
path.resolve([…paths]) | 基于当前工作目录拼接路径 |
常用的api
path.basename()
:此方法返回 path 的最后一部分。一般可用来获取路径中的文件名。path.join()
:路径拼接。path.parse(pathurl)
:把一个路径转成一个对象
示例
path.basename('/foo/bar/baz/asdf/quux.html');// 返回: 'quux.html'
path.basename('/foo/bar/baz/asdf/quux.html', '.html');// 返回: 'quux'
path.dirname('/foo/bar/baz/asdf/quux');// 返回: '/foo/bar/baz/asdf'
path.extname('index.html');// 返回: '.html'
注意:不考虑其中地址是否真的存在,只是单纯调用方法,获取结果。
使用path模块解决文件读写中的路径拼写
// 拼接html5.jpg的绝对路径// 1) 找到当前文件夹的绝对路径console.log(__dirname)// 2) 加上 html5.jpgconst fs = require('fs')const path = require('path')const filePath = path.join(__dirname, 'html5.jpg')// const filePath = __dirname + '\\html5.jpg'// 走一步,看一步console.log(filePath)fs.readFile(filePath,function(err, data) {if(err) {console.log(err)return}console.log(data)})
案例
对json数据进行操作。
|--db
|-----data.json
|--yourfile.js
data.json
[{"name":"小王"},{"name":"小李"}]
yourfile.js
// 这里写你的代码
// ......
// 完成的功能是: node yourfile.js之后,会在data.json中添加一条记录:
会在data.json中添加一条记录
[{"name":"小王"},{"name":"小李"},{"name":"小张"}]
代码演示
const fs = require('fs')
const path = require('path')let filePath = path.join(__dirname, 'db', 'data.json')fs.readFile(filePath, 'utf8', (err, data) => {if (err) throw errlet arr = JSON.parse(data)arr.push({ "name": "小张" })let content = JSON.stringify(arr)fs.writeFile(filePath, content, (err) => {if (err) throw err})
})
更多推荐
node.js核心模块 path模块
发布评论