# node 文件操作

# 1、重命名、移动

fs.rename(
  './files/04.重命名和移动.txt',
  './files/04.重命名和移动_修改名字.txt',
  err => {},
);
1
2
3
4
5

# 2、删除文件

// 删除,err 是失败返回数据对象,成功返回 null
fs.unlink('./files/04.重命名和移动_修改名字.txt', err => {
  console.log(err);
});
1
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

输出:

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

提供方法:

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

fs.statSync(path, options) statSync 是 stat 函数的同步版本

上次更新: 8/31/2024, 10:47:42 AM