【Node.js基础02】fs、path模块

目录

一:fs模块-读写文件

[1 加载fs模块对象](#1 加载fs模块对象)

[2 读制定文件内容文件](#2 读制定文件内容文件)

[3 向文件中写入内容](#3 向文件中写入内容)

二:path模块-路径处理

[1 问题引入](#1 问题引入)

[2 __dirname内置变量](#2 __dirname内置变量)

使用方法

一:fs模块-读写文件

fs模块封装了与本机文件系统交互方法和属性

1 加载fs模块对象

javascript 复制代码
const fs = require('fs')//fs是模块标识符:模块名字

fs类似于插件,集成了一定量的方法和属性

2 读制定文件内容文件

javascript 复制代码
fs.readFile('文件路径',(err,data)=>{
    //读取后的回调函数
    //data为获取文件内容的Buffer数据流,为16进制数据
    //将16进制的Buffer数据流转换成字符串
    //data.toString()
})

3 向文件中写入内容

javascript 复制代码
fs.writeFile('文件路径','写入内容',err=>{
    //写入回调函数
})

二:path模块-路径处理

1 问题引入

在Node.js环境下执行的JS代码,是跟据终端所在路径查找文件

eg

在该截图中,利用index.js文件读取imge.txt文件。

在终端为Day01文件夹下运行node命令 node 03/index.js,index.js代码中编写的查找文件路径为../imge.txt.因此在Day01文件夹为终端的父级文件夹下查找imge.txt.

因为imge.txt在Day01文件夹下,所以找不到该文件,出现报错现象

因此,在Node.js代码中,读取文件或者其他操作时,要使用绝对路径进行相应查找

2 __dirname内置变量

作用:获取当前模块文件夹的绝对路径

D:\workSpace\front-end development\nodejs和Webpack\Day01\03

使用方法

1 加载path模块

const path = require('path')

2 使用path.join()方法,拼接路径

path.join('路径1','路径2'....)

path.join()会使用特定于平台的分隔符作为定界符,将所有给定的路径片段连接在一起

javascript 复制代码
const fs = require('fs')
console.log(__dirname);
const path = require('path')
fs.readFile(path.join(__dirname, '../', 'imge.txt'), (err, data) => {
  if (err) console.log(err)
  else console.log(data.toString())
})
相关推荐
Flynt11 小时前
npm v12 来了:allowScripts 默认关闭,我的项目差点跑不起来
安全·npm·node.js
叫我Paul就好1 天前
尝试 Node 搭建后端-开发框架
node.js
风止何安啊3 天前
网课倍速痛点解决:一套前端代码实现自由控速播放器
前端·javascript·node.js
糖拌西瓜皮3 天前
Node.js核心模块实战:文件、路径、HTTP与流处理
javascript·node.js
糖拌西瓜皮3 天前
Node.js工程化实践:包管理、TypeScript配置与代码质量
typescript·node.js
糖拌西瓜皮3 天前
NestJS入门指南:Java开发者的Spring Boot体验
javascript·node.js
糖拌西瓜皮3 天前
Express框架快速上手:中间件、路由与错误处理
javascript·node.js
半个落月3 天前
从 Tokenization 到 Embedding:用 Node.js 搞懂大模型为什么先“分词”再“向量化”
人工智能·node.js
叁两4 天前
前端转型AI Agent该如何学习?(前置篇)
前端·人工智能·node.js
糖拌西瓜皮4 天前
TypeScript 进阶:泛型、条件类型、类型守卫与装饰器
javascript·node.js