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


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

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

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(读取文件成功:
+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.其他更多方法可以参考官方文档

6.__dirname

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

经验分享 程序员 微信小程序 职场和发展