Node.js 文件系统------------读取文件

Posted ycyweb

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Node.js 文件系统------------读取文件相关的知识,希望对你有一定的参考价值。

fs.read(fd, buffer, offset, length, position, callback)
参数使用说明如下:
  • fd - 通过 fs.open() 方法返回的文件描述符。

  • buffer - 数据写入的缓冲区。

  • offset - 缓冲区写入的写入偏移量。

  • length - 要从文件中读取的字节数。

  • position - 文件读取的起始位置,如果 position 的值为 null,则会从当前文件指针的位置读取。

  • callback - 回调函数,有三个参数err, bytesRead, buffer,err 为错误信息, bytesRead 表示读取的字节数,buffer 为缓冲区对象。

  input.txt内容

1 123456789

 1 var fs =require(‘fs‘);
 2 var buf =new Buffer(8);
 3 
 4 console.log("准备打开已存在的文件!");
 5 
 6 fs.open(‘./input.txt‘,‘r+‘,function(err,fd){
 7     if(err){
 8         return console.error(err);
 9     }
10     console.log("文件打开成功");
11     console.log("准备读取文件。");
12 
13     fs.read(fd,buf,2,buf.length-2,2,function(err,bytes){  //此处的2是针对input.txt的位置来说的
14         console.log(buf.length);
15         if(err){
16             console.log(err);
17         }
18         console.log(bytes +" 字节被读取");
19         if(bytes>0){
20             console.log(buf.slice(0,bytes+2).toString());  // 此处的0 是针对 缓冲区的位置来说的
21         }
22     })
23 
24     fs.close(fd,function(err){
25         if(err){
26             console.log(err);
27         }
28         console.log("文件关闭成功");
29     })
30 })

  技术分享图片   注意前面的两个空格

 console.log(buf.slice(0,bytes+2).toString());  中的 0 取 2 时,结果是
技术分享图片

本文练习来自 https://www.runoob.com/nodejs/nodejs-fs.html








以上是关于Node.js 文件系统------------读取文件的主要内容,如果未能解决你的问题,请参考以下文章

Node.js文件系统路径的操作函数

Node的文件系统及Buffer概述

读 Node.js 源码深入理解 cjs 模块系统

读 Node.js 源码深入理解 cjs 模块系统

Node.js文件系统(fs模块的使用)

Node.js 可写流创建错误文件(更大且不可读)