node.js中的fs.readSync方法使用说明
方法说明:
同步版的fs.read()。
方法将返回一个bytesRead(读取的字节数)
语法:
fs.readSync(fd,buffer,offset,length,position)
由于该方法属于fs模块,使用前需要引入fs模块(varfs=require(“fs”))
接收参数:
fs
buffer 缓冲区,数据将被写入。
offset buffer写入的偏移量
length (integer) 指定文件读取字节数长度
position (integer) 指定文件读取的起始位置,如果该项为null,将从当前文件指针的位置开始读取数据。
例子:
varfs=require('fs');
fs.open('123.txt','r',function(err,fd){
if(err){
console.error(err);
return;
}
varbuf=newBuffer(8);
varreadfile=fs.readSync(fd,buf,0,8,null);
console.log(readfile);
})
源码:
fs.readSync=function(fd,buffer,offset,length,position){
varlegacy=false;
if(!util.isBuffer(buffer)){
//legacystringinterface(fd,length,position,encoding,callback)
legacy=true;
varencoding=arguments[3];
assertEncoding(encoding);
position=arguments[2];
length=arguments[1];
buffer=newBuffer(length);
offset=0;
}
varr=binding.read(fd,buffer,offset,length,position);
if(!legacy){
returnr;
}
varstr=(r>0)?buffer.toString(encoding,0,r):'';
return[str,r];
};