fs(文件系统)
Node.js提供了一个用于操作文件系统的模块,其命名为 fs
fs.readFile:异步 地读取目标文件内容
使用方式:
const fs = require('fs') // 引入Node.js文件操作组件fs
fs.readFile(path[, options], callback(err, data))
- path 文件路径
- options
encoding(string | null)默认值:'null'( 如果没有指定encoding,则返回原始的 buffer )flag默认值:'r'
- callback 回调函数,进行相应的错误处理及提示
- err
- data 目标文件内容
用法实例如下:
const fs = require('fs') // 引入Node.js文件操作组件fs
fs.readFile('/etc/passwd', 'utf8', (err, data) => {
if (err) throw err; // 若读取错误,则抛出err
console.log(data); // 若读取成功,则打印data
});
fs.writeFile:异步地将数据写入目标文件
使用方式:
const fs = require('fs') // 引入Node.js文件操作组件fs
fs.writeFile(file, data[, options], callback(err))
- file 文件路径( 当该路径为文件名时,若检测该文件已存在则覆盖该文件 )
- data 字符串或 buffer
- options
encoding(string | null)默认值:'utf8'mode默认值:0o666flag默认值:'w'
- callback 回调函数,进行相应的错误处理及提示
- err
用法实例如下:
const fs = require('fs') // 引入Node.js文件操作组件fs
fs.writeFile('文件.txt', 'Node.js中文网', 'utf8', (err) => {
if (err) throw err; // 若写入错误,则抛出err
console.log('文件已被保存'); // 若写入成功,则打印‘文件已被保存’
});
fs.readdir:异步地读取目录的内容
使用方式:
const fs = require('fs') // 引入Node.js文件操作组件fs
fs.readdir(path[, options], callback(err, files))
- path 用于渲染目录的模板文件
- options
- encoding 默认值:
'utf8'( 如果encoding设置为'buffer',则返回的文件名是Buffer对象 ) - withFileTypes 默认值:
false( 如果options.withFileTypes设置为true,则files数组将包含fs.Dirent对象 )
- encoding 默认值:
- callback 回调函数,进行相应的错误处理及提示
用法实例如下:
const fs = require('fs') // 引入Node.js文件操作组件fs
fs.readdir('./01-http-helloworld/', (err, files) => {
if (err) throw err; // 若目录读取错误,则抛出err
console.log('目录读取成功'); // 若目录读取成功,则打印‘目录读取成功’
}
以上是目前14nodejs(7天)教程涉及的三个文件操作模块,后面会搭配require('http')组件实现目录读取的读取及渲染效果,还待下文...
文章已同步我的个人博客:《Node学习笔记 fs.readFile、fs.writeFile、fs》
资料参考:
本篇文章由一文多发平台ArtiPub自动发布