node.js中的buffer.toString方法使用说明
方法说明:
将buffer对象转换成指定的字符编码的字符串。
语法:
buffer.toString([encoding],[start],[end])
接收参数:
encoding 转换成字符串后的字符编码,默认为‘utf8′
start buffer转换的起始位置,默认为0
end buffer转换的结束位置,默认为buffer长度
例子:
varb=newBuffer(50);
console.log(b);
varc=b.toString('base64',0,10);
console.log(c);
源码:
//toString(encoding,start=0,end=buffer.length)
Buffer.prototype.toString=function(encoding,start,end){
varloweredCase=false;
start=start>>>0;
end=util.isUndefined(end)?this.length:end>>>0;
if(!encoding)encoding='utf8';
if(start<0)start=0;
if(end>this.length)end=this.length;
if(end<=start)return'';
while(true){
switch(encoding){
case'hex':
returnthis.hexSlice(start,end);
case'utf8':
case'utf-8':
returnthis.utf8Slice(start,end);
case'ascii':
returnthis.asciiSlice(start,end);
case'binary':
returnthis.binarySlice(start,end);
case'base64':
returnthis.base64Slice(start,end);
case'ucs2':
case'ucs-2':
case'utf16le':
case'utf-16le':
returnthis.ucs2Slice(start,end);
default:
if(loweredCase)
thrownewTypeError('Unknownencoding:'+encoding);
encoding=(encoding+'').toLowerCase();
loweredCase=true;
}
}
};