如何使用node中的buffer
介绍:Buffer类是一个全局类,是一个比较罕见不需要require( ‘buffer’ )就可以使用的类,Buffer类似与数组也有length, 它里面的元素为16进制的两位数,即 0-255的数值,大小一经设置不可改变。
作用: 用来处理二进制数据。
string
String类型 - 将要被写入 buffer 的数据 offset
Number类型, 可选参数,从buffer的第几位开始写入 length
Number类型, 可选参数, 写几个到buffer对象中 encoding
String类型, 可选参数, 默认: 'utf8' encoding
String类型, 可选参数, 默认: 'utf8'start Number类型, 可选参数,从第几位开始切
end Number类型, 可选参数, 切到第几位,不包括结束位
**该方法返回的是一个新的bf对象,切取的片段与老的buffer引用的是同一地址,对其中任何一个bf对象进行修改,另外一个bf也会改变;
4. buf.toJson([start],[end]) 返回一个 JSON表示的Buffer实例
5. buf.copy(targetBuffer, [targetStart], [sourceStart], [sourceEnd])
targetBuffer - 新的Buffer对象
targetStart Number类型, 可选参数,从新的buffer的第几位开始写入
sourceStart Number类型, 可选参数, 从老bf的第几位开始拷贝
sourceEnd Number类型, 可选参数, 从老bf的第几位结束拷贝,不包含结束位
6. buf.fill(string,strat,end)
string, 填充的字符串
start 默认是0, 从哪个地方开始被填充
end, 可选参数 默认是bf.length, 填充到哪,不包括结束位
三、buffer提供的类方法
1. Buffer.isEncoding('编码’),判断bf是否支持该编码
2. Buffer.isBuffer(元素),判断该元素是否是bf对象
3.Buffer.byteLength(‘字符串’,'字符编码’),返回的是字符串的字节长度
4.Buffer.concat(字节数组 ,所有bf的总字节长度) 返回一个新的bf对象
学习来源 => http://www.imooc.com/learn/637
今天就写到这了,还有buffer的著名的8kb载体,下次在写^_^ 大家可以去看看这篇博客 http://www.cnblogs.com/time-is-life/p/5385855.html
若需转载,请注明出处,谢谢合作!