Node.js----fs文件系统模块

简介: Node.js----fs文件系统模块

1.什么是fs文件系统模块

fs模块是Node.js官方提供的、用来操作文件的模块,它提供了一系列的方法和属性,用来满足用户对文件操作需求。

官方fs文件系统模块文档(中文)

2.导入fs文件系统模块

要在JavaScript代码中使用fs模块来操作文件,需要先导入fs文件系统模块

语法:

// 导入fs文件系统模块
const fs = require('fs')

3.使用fs文件系统模块读取文件

使用fs文件系统模块读取文件使用 fs.readFile()

语法:

fs.readFile( path[, options], callback )

path:要读取文件的路径

options:可选参数,以什么编码格式读取文件,默认的为utf-8

callback:回调函数,通过回调函数拿到读取文件的结果

回调函数中有两个参数,第一个参数为错误参数,第二个参数为读取的数据参数

示例:

1.读取文件成功:

// 导入fs文件系统模块
const fs = require( 'fs' )
// 读取1.txt文件中的文本内容
// 读取文件的编码格式为 utf-8
// 回调函数中,第一个参数为错误参数,第二个参数为读取的数据参数
fs.readFile( './1.txt', 'utf-8', function( err, data ) {
  // 打印错误参数
  console.log(err);
  console.log('-----------------');
  // 打印数据参数
  console.log(data);
} )

读取文件成功,err错误对象会为空,data为读取文件中的数据

可以根据err是否为空来判断读取文件是否成功

2.读取文件失败:

// 导入fs文件系统模块
const fs = require( 'fs' )
// 读取1.txt文件中的文本内容
// 读取文件的编码格式为 utf-8
// 回调函数中,第一个参数为错误参数,第二个参数为读取的数据参数
fs.readFile( './1111111111111111111.txt', 'utf-8', function( err, data ) {
  // 打印错误参数
  console.log(err);
  console.log('-----------------');
  // 打印数据参数
  console.log(data);
} )

读取文件失败,err不为空,为错误信息对象,data数据对象为未定义

3.判断读取文件是否成功:

const fs = require( 'fs' )
// 读取文件成功
fs.readFile( './1.txt', 'utf-8', function( err, data ) {
  console.log('----------------------------------------------------------');
  // 如果读取文件失败,打印错误信息,返回
  if( err ) {
    console.log(err);
    return err;
  }
  // 打印读取的文件数据
  console.log('读取文件成功:\n'+data);
  console.log('----------------------------------------------------------');
} )
// 读取文件失败
fs.readFile( './111111.txt', 'utf-8', function( err, data ) {
  console.log('----------------------------------------------------------');
  // 如果读取文件失败,打印错误信息,返回
  if( err ) {
    console.log(err);
    return err;
  }
  // 打印读取的文件数据
  console.log(data);
  console.log('----------------------------------------------------------');
} )

4.使用fs文件系统模块向文件中写入内容

使用fs文件系统模块向文件中写入内容,使用fs.writeFile()向指定文件中写入内容。

语法:

fs.watchFile( file, data[, options], callback )

file:要写入数据对应的文件的路径

data:要写入的数据

options:可选参数,以什么编码格式读取文件,默认的为utf-8

callback:回调函数,通过回调函数拿到读取文件的结果

回调函数中有一个参数,为错误参数

示例

// 导入fs文件系统模块
const fs = require( 'fs' )
// 要写入的数据
const dataStr = 'Hello Node.js'
// 向2.txt中写入Hello Node.js
fs.writeFile( './2.txt', dataStr, function(err) {
  // 打印错误信息
  console.log(err);
} )

若指定路径中不存在对应的文件,会在对应路径自动创建一个文件

与读取文件一样,写入文件一样可以通过回调函数中的err参数来判断写入文件是否成功

5.其他更多方法可以参考官方文档

官方fs文件系统模块文档(中文)

6.__dirname

__dirname:表示当前文件所处的目录。


相关文章
|
13天前
|
JavaScript 应用服务中间件 Apache
Node.js Web 模块
Node.js Web 模块
14 2
|
16天前
|
JavaScript Unix API
Node.js 文件系统
Node.js 文件系统
10 1
|
2天前
|
前端开发 JavaScript 程序员
探索JavaScript宝库:打开基础知识与实用技能之门(数据类型与变量+ 条件与循环+函数与模块+DOM+异常+ES6)
探索JavaScript宝库:打开基础知识与实用技能之门(数据类型与变量+ 条件与循环+函数与模块+DOM+异常+ES6)
3 0
|
3天前
|
JavaScript 前端开发
JavaScript模块化将复杂软件分解为独立模块,提高代码可读、维护、复用和扩展性。
【6月更文挑战第27天】模块化将复杂软件分解为独立模块,提高代码可读、维护、复用和扩展性。JavaScript模块化有CommonJS(Node.js,`require()`/`module.exports`)、AMD(RequireJS,异步,`define()`/`require()`)和ES6 Modules(官方标准,`import`/`export`)。打包工具如Webpack、Rollup处理兼容性,使模块能在不同环境中运行。
8 0
|
13天前
|
JSON JavaScript 中间件
【Node.js】从基础到精通(三)—— HTTP 模块探索
【Node.js】从基础到精通(三)—— HTTP 模块探索
13 0
|
13天前
|
JavaScript Linux 开发者
【Node.js】从基础到精通(二)—— Path 模块全解析
【Node.js】从基础到精通(二)—— Path 模块全解析
16 0
|
13天前
|
JavaScript 安全 前端开发
【Node.js】从入门到精通(一)—— fs 模块全解析
【Node.js】从入门到精通(一)—— fs 模块全解析
17 0
|
13天前
|
JavaScript 网络协议
Node.js 工具模块
Node.js 工具模块
15 0
|
12月前
|
设计模式 JavaScript 前端开发
|
12月前
|
设计模式 JavaScript 前端开发