当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Node.js fs.copyFile(src, dest[, mode], callback)用法及代码示例


fs.copyFile(src, dest[, mode], callback)

历史
版本变化
v18.0.0

将无效回调传递给 callback 参数现在会抛出 ERR_INVALID_ARG_TYPE 而不是 ERR_INVALID_CALLBACK

v14.0.0

将 'flags' 参数更改为 'mode' 并实施更严格的类型验证。

v8.5.0

添加于:v8.5.0


参数

异步复制 srcdest 。默认情况下,如果 dest 已经存在,它会被覆盖。除了可能的异常之外,没有为回调函数提供任何参数。 Node.js 不保证复制操作的原子性。如果在打开目标文件进行写入后发生错误,Node.js 将尝试删除目标。

mode 是一个可选整数,用于指定复制操作的行为。可以创建由两个或多个值的按位或组成的掩码(例如 fs.constants.COPYFILE_EXCL | fs.constants.COPYFILE_FICLONE )。

  • fs.constants.COPYFILE_EXCL :如果 dest 已存在,则复制操作将失败。
  • fs.constants.COPYFILE_FICLONE :复制操作将尝试创建 copy-on-write reflink。如果平台不支持copy-on-write,则使用回退复制机制。
  • fs.constants.COPYFILE_FICLONE_FORCE :复制操作将尝试创建 copy-on-write reflink。如果平台不支持copy-on-write,则操作将失败。
import { copyFile, constants } from 'node:fs';

function callback(err) {
  if (err) throw err;
  console.log('source.txt was copied to destination.txt');
}

// destination.txt will be created or overwritten by default.
copyFile('source.txt', 'destination.txt', callback);

// By using COPYFILE_EXCL, the operation will fail if destination.txt exists.
copyFile('source.txt', 'destination.txt', constants.COPYFILE_EXCL, callback);

相关用法


注:本文由纯净天空筛选整理自nodejs.org大神的英文原创作品 fs.copyFile(src, dest[, mode], callback)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。