node-文件IO

本文详细介绍了Node.js中的FS模块,包括异步读取文件fs.readFile、写入文件fs.writeFile、获取文件信息fs.stat、读取目录fs.readdir以及创建目录fs.mkdir等核心操作。通过实例展示了如何进行文件读写,并提供了Promise形式的用法。强调了异步操作的重要性,以及在处理文件系统操作时应注意的同步问题。
摘要由CSDN通过智能技术生成

IO

I: input
O: output
外部设备: 非cpu与内存,均为外部设备
IO的读写速度往往低于cpu与内存的交互速度

FS模块

fs.readFile 读取一个文件(异步)

同步的文件相关操作不建议使用

// 假设同级目录下存在test.txt
const fs = require("fs");
// fs.readFile("./test.txt") //不推荐使用相对路径,因为相对路径跟命令提示符相关而非文件位置相关

const path = require("path");
const filename = path.resolve(__dirname, "./test.txt")
fs.readFile(filename, (err, content)=> { // 注意是异步
	console.log(content) // 得到buffer数组
	console.log(content.toString("utf-8")) // 读出字符串内容
})
fs.readFile(filename, "utf-8", (err, content)=> {
	console.log(content) // 读出字符串内容
})
// promise形式
async function aaa() {
	const content =  await fs.promises.readFile(filename, "utf-8")
	console.log(content)
}

fs.writeFile 写入文件

当文件不存在可以创建文件,当目录不存在会报错

async function aaa() {
	// await fs.pormises.writeFile(filename, "想写入的内容", {
	//  	flag: "a" // 追加写入  不写 默认覆盖写入
	// })
	const buffer = Buffer.from("想写入的内容", "utf-8") // buffer形式的写入
	await fs.pormises.writeFile(filename, buffer)
}

fs.stat 获取文件或目录的信息

const stat = await fs.promises.stat(filename)
stat.isDirectory() // 是否是目录
stat.isFile() // 是否是文件

fs.readdir 读取文件夹的子目录或者子文件

fs.mkdir 创建目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

合法的咸鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值