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


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


fsPromises.copyFile(src, dest[, mode])

历史
版本变化
v14.0.0

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

v10.0.0

添加于:v10.0.0


参数
  • src <string> | <Buffer> | <URL> 要复制的源文件名
  • dest <string> | <Buffer> | <URL> 复制操作的目标文件名
  • mode <integer>指定复制操作行为的可可选饰符。可以创建一个由两个或多个值的按位或组成的掩码(例如fs.constants.COPYFILE_EXCL | fs.constants.COPYFILE_FICLONE)默认: 0.
    • 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,则操作将失败。
  • 返回: <Promise> 成功时以undefined 实现。

异步复制 srcdest 。默认情况下,如果 dest 已经存在,它会被覆盖。

不保证复制操作的原子性。如果在打开目标文件进行写入后发生错误,将尝试删除目标文件。

import { constants } from 'node:fs';
import { copyFile } from 'node:fs/promises';

try {
  await copyFile('source.txt', 'destination.txt');
  console.log('source.txt was copied to destination.txt');
} catch {
  console.log('The file could not be copied');
}

// By using COPYFILE_EXCL, the operation will fail if destination.txt exists.
try {
  await copyFile('source.txt', 'destination.txt', constants.COPYFILE_EXCL);
  console.log('source.txt was copied to destination.txt');
} catch {
  console.log('The file could not be copied');
}

相关用法


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