📜  如何访问 Node.js 中的文件系统?

📅  最后修改于: 2022-05-13 01:56:46.143000             🧑  作者: Mango

如何访问 Node.js 中的文件系统?

在本文中,我们研究了如何在 NodeJS 中访问文件系统以及如何对文件执行一些有用的操作。

先决条件:

  • ES6基础知识
  • NodeJS的基础知识

NodeJS 是运行在 JavaScript V8 引擎上的最流行的服务器端编程框架之一,它使用单线程非阻塞 I/O 模型。我们可以使用一些内置模块访问 NodeJS 中的文件系统。

文件系统:文件是存储在辅助存储中的相关信息的集合,或者文件是与文件一起工作并管理文件的相似类型实体的集合,也称为文件系统。

如果您想了解有关文件系统的更多信息,请参阅本文。

文件系统模块(fs 模块):在 NodeJS 中用于处理文件系统的流行内置模块之一是文件系统模块,也简称为“fs”模块。 fs 模块对于在 NodeJS 中执行与文件系统相关的任何任务非常强大。

在 Node JS 中访问文件系统意味着对文件执行一些基本操作。这也称为 CRUD 操作。

CRUD 操作:

  • C => 创建文件
  • R => 读取文件
  • U => 更新文件
  • D => 删除文件

使用“fs”模块对文件的基本操作:

第 1 步:创建一个扩展名为“.js”的文件。

第 2 步:将“fs”模块添加到代码库中。

句法:

const fs = require('fs');

在需要 fs 模块后,您可以对文件执行以下操作:

操作 1:创建文件

句法:

const fs = require('fs');
fs.writeFileSync('./{file_name}', 'Content_For_Writing');

fs.writeFileSync方法用于向文件写入内容,但如果文件不存在,它会在写入内容的同时创建新文件。

操作 2:读取文件

句法:

const fs = require('fs');
const file_content = fs.readFileSync('./{file_name}', 
    '{content_formate}').toString();

// For show the data on console
console.log(file_content);

fs.readFileSync 方法用于从文件中读取数据,readFileSync 的第一个参数是文件的路径,第二个参数接受选项 {format, flag, etc} 并返回流的缓冲区对象。因此,我们可以使用 toString() 方法将缓冲区字符串分配给名为 file_content 的变量,并在将数据分配给 file_content 后,使用 console.log() 方法将数据显示在控制台上。

操作 3:更新文件

句法:

const fs = require('fs');
fs.appendFileSync('./{file_name}', " {Updated_Data}");

const file_content = fs.readFileSync(
    './{file_name}', '{file_formate}').toString();

console.log(file_content);

fs.appendFileSync 方法用于更新文件的数据。

操作 4:删除文件

const fs = require('fs');
fs.unlinkSync('./{file_name}');

fs.unlinkSync() 方法用于通过传递文件名来删除文件。

以下是上述操作的代码实现:

例子:
文件名是 index.js

Javascript
const fs = require('fs');
 
/* The fs.writeFileSync method is used
to write something to the file, but if
the file does not exist, it creates new
files along with writing the contents */
fs.writeFileSync('./testfile', 'This is a file');
var file_content = fs.readFileSync(
        './testfile', 'utf8').toString();
 
console.log(file_content);
 
/* The fs.appendFileSync method is used
for updating the data of a file */
fs.appendFileSync('./testfile', " Updated Data");
file_content = fs.readFileSync(
    './testfile', 'utf8').toString();
console.log(file_content);
 
/* The fs.unlinkSync method are used to delete
the file. With passing the file name */
fs.unlinkSync('./testfile');


试用代码并使用以下命令使用 node.js 运行它:

node index.js

最后,我们看到了如何访问文件系统,也尝试了很多操作。