node.jsでファイルをコピーする

node.jsのバージョン8.5.0以降では、ファイルをコピーする以下の関数を使用できます。

fs.copyFileSync(src, dest[, flags])

fs.copyFileSync()は、srcをdestに同期コピーします。

srcはコピーするファイルのファイル名、
destはコピー先のファイル名です。

flagsはオプションの引数で、fs.constants.COPYFILE_EXCLを指定すると、コピー先にすでにファイルが存在する場合は例外を投げます。
未指定の場合は上書きします。

次のコードはファイルをコピーします。
コピー先にすでにファイルが存在する場合は上書きします。

const fs = require('fs');

const src = 'source.txt';
const dest = 'destination.txt';

fs.copyFileSync(src, dest);

次のコードは、ファイルをコピーします。
コピー先にすでにファイルが存在する場合はエラーにします。

const fs = require('fs');

const src = 'source.txt';
const dest = 'destination.txt';

try {
  fs.copyFileSync(src, dest, fs.constants.COPYFILE_EXCL);
  console.log('ファイルをコピーしました。');
} catch (error) {
  console.log(error);
}

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

ファイルを非同期でコピーします。

srcはコピーするファイルのファイル名、
destはコピー先のファイル名です。

flagsはオプションの引数で、fs.constants.COPYFILE_EXCLを指定すると、コピー先にすでにファイルが存在する場合は例外を投げます。
未指定の場合は上書きします。

次のコードはファイルをコピーします。
コピー先にすでにファイルが存在する場合は上書きします。

const fs = require('fs');

const src = 'source.txt';
const dest = 'destination.txt';

fs.copyFile(src, dest, (err) => {
  if (err) {
    throw err;
  } else {
    console.log('ファイルをコピーしました。');
  }
});

次のコードは、ファイルをコピーします。
コピー先にすでにファイルが存在する場合はエラーにします。

const fs = require('fs');

const src = 'source.txt';
const dest = 'destination.txt';

fs.copyFile(src, dest, fs.constants.COPYFILE_EXCL, (err) => {
  if (err) {
    throw err;
  } else {
    console.log('ファイルをコピーしました。');
  }
});

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください