返回

简单易学!Node.js 删除和复制文件或文件夹的终极指南

前端

前言

在Node.js中,文件操作是不可或缺的基本操作之一。无论是开发Web应用程序还是构建服务器,我们都需要经常处理文件。本指南将详细讲解如何使用Node.js删除和复制文件或文件夹,涵盖同步和异步操作,多种实用方法,以及大量代码示例,帮助您轻松掌握文件操作技巧。

删除文件

同步删除文件

要同步删除文件,可以使用fs.unlinkSync()方法。该方法接受一个参数,即要删除的文件路径。如果文件不存在,该方法将抛出异常。

const fs = require('fs');

// 同步删除文件
try {
  fs.unlinkSync('./path/to/file.txt');
  console.log('文件删除成功!');
} catch (err) {
  console.error('文件删除失败!', err);
}

异步删除文件

要异步删除文件,可以使用fs.unlink()方法。该方法接受两个参数,第一个参数是要删除的文件路径,第二个参数是回调函数。回调函数接受两个参数,第一个参数是错误对象,第二个参数是结果。

const fs = require('fs');

// 异步删除文件
fs.unlink('./path/to/file.txt', (err) => {
  if (err) {
    console.error('文件删除失败!', err);
  } else {
    console.log('文件删除成功!');
  }
});

复制文件

同步复制文件

要同步复制文件,可以使用fs.copyFileSync()方法。该方法接受两个参数,第一个参数是要复制的文件路径,第二个参数是新文件的路径。如果新文件不存在,该方法将创建它。如果新文件已存在,该方法将覆盖它。

const fs = require('fs');

// 同步复制文件
try {
  fs.copyFileSync('./path/to/file1.txt', './path/to/file2.txt');
  console.log('文件复制成功!');
} catch (err) {
  console.error('文件复制失败!', err);
}

异步复制文件

要异步复制文件,可以使用fs.copyFile()方法。该方法接受三个参数,第一个参数是要复制的文件路径,第二个参数是新文件的路径,第三个参数是回调函数。回调函数接受两个参数,第一个参数是错误对象,第二个参数是结果。

const fs = require('fs');

// 异步复制文件
fs.copyFile('./path/to/file1.txt', './path/to/file2.txt', (err) => {
  if (err) {
    console.error('文件复制失败!', err);
  } else {
    console.log('文件复制成功!');
  }
});

删除文件夹

同步删除文件夹

要同步删除文件夹,可以使用fs.rmdirSync()方法。该方法接受一个参数,即要删除的文件夹路径。如果文件夹不存在,该方法将抛出异常。如果文件夹不为空,该方法将失败。

const fs = require('fs');

// 同步删除文件夹
try {
  fs.rmdirSync('./path/to/directory');
  console.log('文件夹删除成功!');
} catch (err) {
  console.error('文件夹删除失败!', err);
}

异步删除文件夹

要异步删除文件夹,可以使用fs.rmdir()方法。该方法接受两个参数,第一个参数是要删除的文件夹路径,第二个参数是回调函数。回调函数接受两个参数,第一个参数是错误对象,第二个参数是结果。

const fs = require('fs');

// 异步删除文件夹
fs.rmdir('./path/to/directory', (err) => {
  if (err) {
    console.error('文件夹删除失败!', err);
  } else {
    console.log('文件夹删除成功!');
  }
});

复制文件夹

同步复制文件夹

要同步复制文件夹,可以使用fs.copyDirSync()方法。该方法接受两个参数,第一个参数是要复制的文件夹路径,第二个参数是新文件夹的路径。如果新文件夹不存在,该方法将创建它。如果新文件夹已存在,该方法将覆盖它。

const fs = require('fs');

// 同步复制文件夹
try {
  fs.copyDirSync('./path/to/directory1', './path/to/directory2');
  console.log('文件夹复制成功!');
} catch (err) {
  console.error('文件夹复制失败!', err);
}

异步复制文件夹

要异步复制文件夹,可以使用fs.copyDir()方法。该方法接受三个参数,第一个参数是要复制的文件夹路径,第二个参数是新文件夹的路径,第三个参数是回调函数。回调函数接受两个参数,第一个参数是错误对象,第二个参数是结果。

const fs = require('fs');

// 异步复制文件夹
fs.copyDir('./path/to/directory1', './path/to/directory2', (err) => {
  if (err) {
    console.error('文件夹复制失败!', err);
  } else {
    console.log('文件夹复制成功!');
  }
});

结语

本指南详细讲解了如何使用Node.js删除和复制文件或文件夹,涵盖了同步和异步操作,多种实用方法,以及大量代码示例。希望这些内容对您有所帮助。如果您有任何疑问或建议,请随时留言。