node中fs模块提供可操作文件的方法有哪些-,nodejs fs读取文件

  node中fs模块提供可操作文件的方法有哪些?,nodejs fs读取文件

  本文整理记录了Nodejs文件fs模块的一些常用API,以免下次忘记。

  node.js速度课程简介:进入学习

  

同步与异步

   fs模块的文件操作一般支持同步和异步API,异步包括回调函数和promsie。同步之后通常是单词sync。[推荐研究:《nodejs 教程》]

  

打开、关闭文件

  fs.open (path: string,callback: (err,FD)=void)用于打开文件,获取文件描述符,并根据获取的文件描述符执行文件操作。Fs.close (fd: number,callback: (err)=void)用于关闭文件。

  //打开文件

  fs.open(path,(err,fd)={

  //对获取的fd进行操作

  //关闭文件

  fs.close(fd,(err)={

  if(err)throw err;

  });

  })一般在对文件进行多项操作时使用。如果只想读取文件的内容,建议使用fs.readFile

  

读取文件(目录)

  读取文件:fs.readfile(路径:string,callback: (err,data)=void)

  fs.readFile(路径,(错误,数据)={

  //字符串或缓冲区

  console.log(数据)

  })读取目录:fs.readdir(路径:string,回调:(err,files: arraystring)=void)

  fs.readdir(。/dir ,(错误,文件名)={

  console.log(文件名)

  })还有另一种方法来读取文件描述符:

  fs.read(fd,buffer,offset,length,position,callback:(err,bytesLen,buffer)=void)

  //分配长度为10的缓冲区

  const buffer=buffer . alloc(10);

  //打开文件

  fs.open(path,(err,fd)={

  //对获取的fd进行操作:将fd对应的文件内容读入缓冲区。

  //位置是文件的起点。

  //length是读取长度。

  //offset是缓冲区的起始位置。

  fs.read(fd,buffer,offset,length,position,(err,bytesLen,buffer)={

  //buffer是包含读取数据的原始缓冲区对象。

  //bytesLen===length;//真

  })

  //关闭文件

  fs.close(fd,(err)={

  if(err)throw err;

  });

  })

写入文件

  将数据写入文件,数据可以是字符串buffer: fs.writefile (path,data,callback: (err)=void)

  fs.writeFile(message.txt ,data,(err)={

  if(err)throw err;

  });还有另一种通过文件描述符fd写文件的方法:

  fs.open(path,(err,fd)={

  //对获取的fd进行操作:将buffer的内容写入fd对应的文件。

  //位置是文件的起点。

  //length是要写入的长度

  //offset是缓冲区的起始位置。

  fs.write(fd,buffer,offset,length,position,(err,bytesWrittenLen,buffer)={

  })

  //关闭文件

  fs.close(fd,(err)={

  if(err)throw err;

  });

  })

删除文件(目录)

  删除文件:fs.unlink (path,callback: (err)=void)

  删除目录:fs.rmdir(路径,回调:(err)=void)

  支持同时删除目录和文件:fs.rm(path,callback:(err)=void)

  

查看目录(文件)的状态信息

   fs.stat(path,(err,stat)={

  //stat包含目录或文件的大小、创建时间、更新时间、是目录还是文件等。

  //stats.isDirectory()

  //stats.isFile()

  })

重命名

  重命名包括重命名文件和目录

  //文件

  fs.rename(oldFile.txt , newFile.txt ,(err)={

  if(err)throw err;

  console.log(重命名完成!);

  });

  //目录

  fs.rename(oldFileDir , newFileDir ,(err)={

  if(err)throw err;

  console.log(重命名完成!);

  });

最后

  感谢阅读。如有疑问,欢迎留言讨论。谢谢大家!

  有关编程的更多信息,请访问:编程入门!以上是分享Nodejs的一些常用文件fs模块API(总结)的细节。更多请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: