Node.js fs.copyFile()實(shí)例講解

小億
237
2023-12-19 05:15:56

fs.copyFile()是Node.js的文件系統(tǒng)(fs)模塊提供的一個(gè)用于復(fù)制文件的方法。它的語(yǔ)法如下:

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

其中,參數(shù)說(shuō)明如下:

  • src:要復(fù)制的源文件的路徑。
  • dest:要將源文件復(fù)制到的目標(biāo)路徑。
  • flags:可選參數(shù),用于指定復(fù)制操作的一些選項(xiàng)。例如:
    • fs.constants.COPYFILE_EXCL:如果目標(biāo)文件已經(jīng)存在,則復(fù)制操作將失敗。
    • fs.constants.COPYFILE_FICLONE:直接創(chuàng)建一個(gè)源文件的快照。
    • fs.constants.COPYFILE_FICLONE_FORCE:強(qiáng)制創(chuàng)建一個(gè)源文件的快照。
  • callback:復(fù)制操作完成后的回調(diào)函數(shù)。

下面是一個(gè)使用fs.copyFile()方法復(fù)制文件的示例:

const fs = require('fs');

fs.copyFile('source.txt', 'destination.txt', (err) => {
  if (err) {
    console.error(err);
    return;
  }

  console.log('File copied successfully!');
});

在上面的示例中,我們通過(guò)fs.copyFile()方法將source.txt文件復(fù)制到destination.txt文件中。在復(fù)制完成后,會(huì)調(diào)用回調(diào)函數(shù),并輸出相應(yīng)的結(jié)果。

需要注意的是,fs.copyFile()方法只能復(fù)制文件,不能復(fù)制目錄。如果要復(fù)制整個(gè)目錄,可以使用其他方法,例如fs-extra模塊提供的copy()方法。

0