fs - 文件系统
1 file system-文件读写
- 读取文件(fs.readFile)
- 写入文件(fs.writeFile)
- 流程:引入fs模块 -> 调用方法 -> 异常捕获
1.1、写入文件方法(异步、同步)
1.1.1、fs.writeFile(file, data[, options], callback)
file
<string> | <Buffer> | <URL> | <integer> 文件名或文件描述符。data
<string> | <Buffer> | <TypeArray> | <DataView>options
<Object>| <string>encoding
<string> | <null> 默认值:'utf8'
。mode
<integer> 默认值:0o666
。flag
参见文件系统flag
的支持。 默认值:'w'
。
callback
<Function>err
<Error>
异步地写入数据到文件(如果文件已存在,则覆盖文件)。 data
可以是字符串或 buffer。
fs.writeFile('文件.txt', 'Node.js 中文网', 'utf8', callback);
1.1.2、fs.writeFileSync(file, data[, options])
同步地写入数据到文件(如果文件已存在,则覆盖文件)。 data
可以是字符串或 buffer。
fs.writeFile('文件.txt', 'Node.js 中文网', 'utf8');
2.1、读取文件方法(异步、同步)
2.1.1、fs.readFile(path[, options], callback)
-
path
<string> | <Buffer> | <URL> | <integer> 文件名或文件描述符。 -
options
<Object> | <string>-
encoding
<string> | <null> 默认值:null
。 -
flag
<string> 参见文件系统flag
的支持。默认值:'r'
。
-
-
callback
<Function>err
<Error>data
<string> | <Buffer>
异步地读取文件的全部内容。
fs.readFile('文件名', (err, data) => {
if (err) throw err;
console.log(data);
});
2.1.2、fs.readFileSync(path[, options])
-
path
<string> | <Buffer> | <URL> | <integer> 文件名或文件描述符。 -
options
<Object> | <string>`-
encoding
<string> | <null> 默认值:null
。 -
flag
<string> 参见文件系统flag
的支持。默认值:'r'
。
-
-
返回:<string> | <Buffer>
返回 path
的内容。
2 file system-目录的创建和删除
- 创建文件夹(fs.mkdir)
- 删除文件夹(fs.rmdir)
- 删除文件(fs.unlink)
- 流程:引入fs模块 -> 调用方法 -> 异常捕获
2.1创建目录
2.1.1异步创建目录fs.mkdir(path[, options], callback)
异步地创建目录。
// 创建 `/目录1/目录2/目录3`,不管 `/目录1` 和 `/目录1/目录2` 是否存在。
fs.mkdir('/目录1/目录2/目录3', (err) => {
if (err) throw err;
});
2.1.2同步创建目录fs.mkdirSync(path[, options])
同步地创建目录。
2.2 删除目录
2.2.1 异步删除fs.rmdir(path[, options], callback)
2.2.2 同步删除fs.rmdirSync(path[, options])
2.3删除文件
fs.unlink(path, callback)
path
<string> | <Buffer> | <URL>callback
<Function>err
<Error>
异步地删除文件或符号链接。
const fs = require('fs')
fs.unlink('writeMe.txt',function(err){
if (err) throw err
console.log('文件删除成功!')
})
fs.unlink()
对空或非空的目录均不起作用。 若要删除目录,则使用 fs.rmdir()
。
3 file system - 文件重命名
fs.rename(oldPath, newPath, callback)
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210131153611298.png)
异步地把 oldPath
文件重命名为 newPath
提供的路径名。 如果 newPath
已存在,则覆盖它。
fs.rename('旧文件.txt', '新文件.txt', (err) => {
if (err) throw err;
console.log('重命名完成');
});