千家信息网

nodejs项目中如何增删改查文件

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,本篇内容主要讲解"nodejs项目中如何增删改查文件",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"nodejs项目中如何增删改查文件"吧!这里主要介绍no
千家信息网最后更新 2026年11月01日nodejs项目中如何增删改查文件

本篇内容主要讲解"nodejs项目中如何增删改查文件",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"nodejs项目中如何增删改查文件"吧!

这里主要介绍nodejs的文件模块,通过nodejs的文件模块,我们可以创建、读取、修改、删除我们操作系统上的文件或文件夹,同理在Linux服务器上也是可以运行的。因为nodejs是跨平台运行的javascript运行环境。

项目结构:

├── files│   ├── file1│   └── file2├── dir.js├── index-callback.js├── index-promise.js└── stream.js

常规文件操作

回调函数式操作

创建index-callback.js,代码如下

const fs = require('fs')const path = require('path')// 读取文件fs.readFile(path.join(__dirname, 'files', 'file1'), (err, buf) => {    if (err) throw err    console.log(buf.toString()) })// 写入文件fs.writeFile(path.join(__dirname, 'files', 'file3'), '欢迎光临', (err) => {    if (err) throw err    console.log('写入完成')       // 在文件末尾追加    fs.appendFile(path.join(__dirname, 'files', 'file3'), '\n\n男宾三位', (err) => {        if (err) throw err        console.log('追加完成')           // 修改文件名称        fs.rename(path.join(__dirname, 'files', 'file3'), path.join(__dirname, 'files', 'file3-rename'), (err) => {            if (err) throw err            console.log('改名完成')             })    })})

总结:

  • readFile用来读取文件的内容,在读取成功后在回调函数返回的是buffer格式,所以需要调用toString()方法

  • writeFile写入内容进文件,如果文件不存在会自动创建文件

  • appendFile在文件末尾追加内容,如果文件不存在会自动创建文件

  • rename可以用来修改文件名称

  • path.join用来拼接文件路径,可以避免不同操作系统路径格式不同的问题

  • __dirname是node.js全局变量,默认是当前项目目录

promise async await式操作

创建index-promise.js,代码如下

const fsPromises = require('fs').promisesconst path = require('path')const fileFunc = async () => {    try {        const data = await fsPromises.readFile(path.join(__dirname, 'files', 'file1'))        console.log(data.toString())        await fsPromises.unlink(path.join(__dirname, 'files', 'file1'))              await fsPromises.writeFile(path.join(__dirname, 'files', 'file5'), data)        await fsPromises.appendFile(path.join(__dirname, 'files', 'file5'), '\n\n欢迎光临')        await fsPromises.rename(path.join(__dirname, 'files', 'file5'), path.join(__dirname, 'files', 'file5-rename'))        const newData = await fsPromises.readFile(path.join(__dirname, 'files', 'file5-rename'))        console.log(newData.toString())    } catch (error) {        console.log(error)    }}fileFunc()

总结:

  • 相比回调式操作,使用async await操作会更加优雅,不会出现回调地狱

  • unlink用来删除文件

文件流操作

创建stream.js,代码如下

方式一

const fs = require('fs')// 读取文件流const rs = fs.createReadStream('./files/file2', { encoding: 'utf8' })// 写入文件流const ws = fs.createWriteStream('./files/new-file2')// 监听读取并写入rs.on('data', (chunk) => {        ws.write(chunk)})

在读取大文件时或者处理网络文件时,文件流操作很有用,在操作大文件时,我们可以设置每次读取的数据量大小,默认是64kb

方式二

const fs = require('fs')// 读取文件流const rs = fs.createReadStream('./files/file2', { encoding: 'utf8' })// 写入文件流const ws = fs.createWriteStream('./files/new-file2')rs.pipe(ws)

pipe方法自动将读取文件流导入到写入流,相当于一个便捷操作。

操作文件夹

创建dir.js,代码如下

const fs = require('fs')// 判断文件夹是否存在if (!fs.existsSync('./new')) {      // 创建文件夹    fs.mkdir('./new', (err) => {        if (err) throw err        console.log('文件夹创建成功')    })}if (fs.existsSync('./new')) {      // 删除文件夹    fs.rmdir('./new', (err) => {        if (err) throw err        console.log('文件夹删除成功')    })}

总结:

  • existsSync是同步方法,用来判断文件夹是否存在

  • mkdir创建文件夹

  • rmdir删除文件夹

这3个操作文件夹的方法非常常用,就像每天吃饭一样。

到此,相信大家对"nodejs项目中如何增删改查文件"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

文件 文件夹 项目 内容 方法 代码 成功 运行 不同 操作系统 函数 名称 方式 末尾 格式 模块 欢迎光临 系统 路径 学习 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 北京路客互联网科技有限公司 盈实互联网科技 万易互联网科技有限公司 齐家互联网科技 成都仁贤领冠互联网科技有限公司 广西拼得多互联网科技有限公司 富国互联网科技创新基金 卫星互联网科技股票 互联网企业和科技型企业 华夏互联网科技业 玉溪互联网科技怎么选 中国互联网十大科技股排名 银行科技岗属于互联网吗 美国互联网科技公司 互联网科技股为什么大涨 半导体是互联网高科技吗 下一代互联网重大应用科技园 神州科技互联网有限公司 广东鹅鹅鹅互联网科技有限公司 互联网科技手抄报图片 互联网科技有限公司图片 万易互联网科技有限公司 卓越科技(互联网 ) 哈尔滨新华互联网科技 金融科技与互联网金融相同和不同 互联网科技公司实习生 赶超互联网科技 微信多开 和信科技工业互联网 互联网科技博主张洲 河南商务圈互联网科技有限公司
0