Node.js中的文件系统(file system)模块详解

 更新时间:2023年11月11日 11:17:14   作者:几何心凉  
Node.js文件系统模块提供了丰富的方法,用于读取、写入、操作文件和目录,文件系统模块是Node.js强大而灵活的一部分,为文件操作提供了方便的API,本文给大家介绍Node.js中的文件系统(file system)模块,感兴趣的朋友一起看看吧

概述

Node.js提供了一个文件系统模块(fs模块),用于处理文件系统的交互。这个模块允许你读取、写入、修改、删除文件,以及创建和读取目录。文件系统模块提供了同步和异步的方法,可以根据需要选择合适的方法。

基本用法

const fs = require('fs');

文件读取

异步读取文件

fs.readFile('example.txt', 'utf8', (err, data) => {
  if (err) {
    console.error('读取文件错误:', err);
    return;
  }
  console.log('文件内容:', data);
});

同步读取文件

try {
  const data = fs.readFileSync('example.txt', 'utf8');
  console.log('文件内容:', data);
} catch (err) {
  console.error('读取文件错误:', err);
}

文件写入

异步写入文件

const content = '写入文件的内容';
fs.writeFile('example.txt', content, 'utf8', (err) => {
  if (err) {
    console.error('写入文件错误:', err);
    return;
  }
  console.log('文件写入成功');
});

同步写入文件

const content = '写入文件的内容';
try {
  fs.writeFileSync('example.txt', content, 'utf8');
  console.log('文件写入成功');
} catch (err) {
  console.error('写入文件错误:', err);
}

文件和目录操作

异步创建目录

fs.mkdir('new_directory', (err) => {
  if (err) {
    console.error('创建目录错误:', err);
    return;
  }
  console.log('目录创建成功');
});

同步创建目录

try {
  fs.mkdirSync('new_directory');
  console.log('目录创建成功');
} catch (err) {
  console.error('创建目录错误:', err);
}

异步读取目录

fs.readdir('new_directory', (err, files) => {
  if (err) {
    console.error('读取目录错误:', err);
    return;
  }
  console.log('目录中的文件:', files);
});

同步读取目录

try {
  const files = fs.readdirSync('new_directory');
  console.log('目录中的文件:', files);
} catch (err) {
  console.error('读取目录错误:', err);
}

文件和目录删除

异步删除文件

fs.unlink('example.txt', (err) => {
  if (err) {
    console.error('删除文件错误:', err);
    return;
  }
  console.log('文件删除成功');
});

同步删除文件

try {
  fs.unlinkSync('example.txt');
  console.log('文件删除成功');
} catch (err) {
  console.error('删除文件错误:', err);
}

异步删除目录

fs.rmdir('new_directory', (err) => {
  if (err) {
    console.error('删除目录错误:', err);
    return;
  }
  console.log('目录删除成功');
});

同步删除目录

try {
  fs.rmdirSync('new_directory');
  console.log('目录删除成功');
} catch (err) {
  console.error('删除目录错误:', err);
}

总结

Node.js文件系统模块提供了丰富的方法,用于读取、写入、操作文件和目录。无论是异步还是同步的操作,开发者都可以根据项目的需要选择适当的方法。文件系统模块是Node.js强大而灵活的一部分,为文件操作提供了方便的API。

到此这篇关于Node.js中的文件系统(file system)模块的文章就介绍到这了,更多相关node.js文件系统内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 基于Express+multer实现文件上传功能

    基于Express+multer实现文件上传功能

    Multer是Node.js中的一个第三方包,或者说是第三方中间件,主要用于是实现文件上传的功能,本文小编讲给大家详细介绍一下基于Express+multer来实现文件上传功能,文章通过代码示例和图文介绍的非常详细,需要的朋友可以参考下
    2023-11-11
  • Nestjs自定义注解实现接口权限控制详解

    Nestjs自定义注解实现接口权限控制详解

    这篇文章主要为大家介绍了Nestjs自定义注解实现接口权限控制详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • 基于NodeJS开发钉钉回调接口实现AES-CBC加解密

    基于NodeJS开发钉钉回调接口实现AES-CBC加解密

    这篇文章主要介绍了基于NodeJS开发钉钉回调接口 实现AES-CBC加解密,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • Node.JS获取GET,POST数据之queryString模块使用方法详解

    Node.JS获取GET,POST数据之queryString模块使用方法详解

    本文将详细介绍nodeJS中的queryString模块使用方法,包括Node.JS获取GET,POST数据的方法,需要的朋友可以参考下
    2020-02-02
  • Puppeteer 爬取动态生成的网页实战

    Puppeteer 爬取动态生成的网页实战

    这篇文章主要介绍了Puppeteer 爬取动态生成的网页实战,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-11-11
  • Node.js对MongoDB进行增删改查操作的实例代码

    Node.js对MongoDB进行增删改查操作的实例代码

    这篇文章主要介绍了Node.js对MongoDB进行增删改查操作 ,需要的朋友可以参考下
    2019-04-04
  • 实时通信WebSocket的原理和工作过程

    实时通信WebSocket的原理和工作过程

    WebSocket持久连接使得服务器可以主动向客户端推送数据,而不需要等待客户端的请求,是一种专门设计用于实现持久连接的协议,WebSocket的持久连接特性使其成为实时性要求高的应用的理想选择,如在线聊天、实时游戏、数据监控等
    2023-12-12
  • Nodejs封装类似express框架的路由实例详解

    Nodejs封装类似express框架的路由实例详解

    在本篇文章里小编给大家整理的是关于Nodejs封装类似express框架的路由实例内容,有需要的朋友们学习下。
    2020-01-01
  • Node.js引入UIBootstrap的方法示例

    Node.js引入UIBootstrap的方法示例

    这篇文章主要介绍了Node.js引入UIBootstrap的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • nodejs连接mysql数据库及基本知识点详解

    nodejs连接mysql数据库及基本知识点详解

    这篇文章主要介绍了nodejs连接mysql数据库,结合实例形式总结分析了nodejs连接与操作mysql数据库的相关模板、配置及mysql数据库查询、添加数据等操作技巧,需要的朋友可以参考下
    2018-03-03

最新评论