fs文件系统模块

fs文件系统模块

fs模块式Node.js官方提供的,用来操作文件的模块,如果想要在js代码中,使用fs模块来操作文件,需要先使用require函数导入fs模块,导入方法:const fs = require('fs')

fs模块提供的方法和属性

1. fs.readFile()方法,用来读取指定文件中的内容

语法格式fs.readFile(path[,options],callback)其中中括号括起来的内容为可选参数,未括起来的为必填参数

  • path:必选参数,字符串,用来表示文件的路径
  • options:可选参数,表示用什么样的编码格式来读取文件
  • callback:必选参数,文件读取完成后,通过回调函数拿到读取的结果

具体使用
在这里插入图片描述

判断文件是否读取成功

在这里插入图片描述

2.fs.writeFile()方法,用来向指定文件中写入内容

语法格式fs.writeFile(file,data[,options],callback)

  • file:必选参数,需要指定一个文件路径的字符串,表示文件的存放路径
  • data:必选参数,表示要写入的内容
  • options:可选参数,表示要以什么格式写入文件内容,默认值为utf8
  • callback:必选参数,文件写入完成后的回调函数

具体使用
在这里插入图片描述

判断是否写入成功

在这里插入图片描述

注意:当使用fs.writeFile()方法向指定文件中写入内容时,当文件不存在,会自动建立一个新文件,并将内容写入到创建的新文件中,但是,当指定文件已经存在时,会自动覆盖原来文件中的内容,文件中只有新写入的内容

路径动态拼接

使用fs模块操作文件时,如果提供的操作路径是以.或…/开头的相对路径时,由于代码在运行的时候,会以执行node命令时所处的目录,动态拼接出被操作文件的完整路径,很容易出现路径动态拼接错误的问题。
解决

  1. 在使用fs模块操作文件时,直接提供完整的路径,但是使用这种方法,代码移植性非常差,不利于后期维护
  2. _ _dirname表示当前文件所处的目录,在文件路径处可以用 _ _dirname和相对路径进行拼接(推荐使用)

猜你喜欢

转载自blog.csdn.net/qq_62755767/article/details/127210452