# node 文件操作
# 1、重命名、移动
fs.rename(
'./files/04.重命名和移动.txt',
'./files/04.重命名和移动_修改名字.txt',
err => {},
);
1
2
3
4
5
2
3
4
5
# 2、删除文件
// 删除,err 是失败返回数据对象,成功返回 null
fs.unlink('./files/04.重命名和移动_修改名字.txt', err => {
console.log(err);
});
1
2
3
4
2
3
4
# 3、获取文件元数据信息
fs.stat(path, options, callbackfunction)
const fs = require('fs');
fs.stat('./package.json', (err, fileObject) => {
if (err) {
console.log(err);
} else {
console.log(fileObject);
}
});
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
输出:
Stats {
dev: 3330445139,
mode: 33206,
nlink: 1,
uid: 0,
gid: 0,
rdev: 0,
blksize: 4096,
ino: 562949955554406,
size: 204,
blocks: 0,
atimeMs: 1645280252542.7854,
mtimeMs: 1644120598975.729,
ctimeMs: 1644120598975.729,
birthtimeMs: 1642860250548.1833,
atime: 2022-02-19T14:17:32.543Z,
mtime: 2022-02-06T04:09:58.976Z,
ctime: 2022-02-06T04:09:58.976Z,
birthtime: 2022-01-22T14:04:10.548Z
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
提供方法:
const fs = require("fs")
fs.stat("./package.json", (err, fileObject) => {
if (err) {
console.log(err)
} else {
console.log(fileObject.isFile()) // return true for files
console.log(fileObject.isDirectory())// true for directory
console.log(fileObject.isBlockDevice())
console.log(fileObject.isSymbolicLink()) return true for symbolic link
console.log(fileObject.isCharacterDevice())
console.log(fileObject.isFIFO())
console.log(fileObject.isSocket())
}
})
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
fs.statSync(path, options)
statSync 是 stat 函数的同步版本