Node.js简明教程五:Buffer

纯JavaScript对Unicode字符串支持很好,但是对二进制数据的处理不是很好-TCP流或二进制文件流。Node使用Buffer类存储原始数据;因为Buffer是一个全局类,所以不用require导入。

创建一个Buffer

第一种构造方法:

第二种构造方法:

第三种构造方法:

使用字符串初始化Buffer,utf8是默认的编码方式,但是你可以使用如下编码:”ascii”,”utf8″,”utf16le”,”ucs2″,”base64″,”hex”。


写入到Buffer

写入到Buffer的语法为:

参数:

  • string:需要写入buf的字符串数据
  • offset:指定从buf的哪个位置开始写,默认值是0,从buf头
  • length:写入的字节数,默认值是buf.length
  • encoding:编码方式,默认值”utf8″

返回值:octet位数,如果buffer的空间不够,它会写入字符串的一部分。

示例代码

执行结果:


读取Buffer

从Buffer读取的语法:

参数:

  • encoding:编码方式,默认utf8
  • start:从哪开始,默认0,从头开始
  • end:结束位置,默认到文件尾

代码示例


把Buffer转换为Json

使用的方法:

示例代码

执行结果:


连接Buffer

参数

  • list:要连接的buffer数组
  • totalLength:连接之后的总长度

返回值:返回一个Buffer

代码示例

执行结果:


比较Buffer

比较方法:

返回一个数字,如果小于0,buf<otherBuffer;如果等于0,buf==otherBuffer;如果大于0,buf>otherBuffer。

返回true,相等;返回false,不相等。

示例代码


复制Buffer

复制一个Buffer:

示例代码:


截取Buffer


关于Buffer的更多方法,请看文档。

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注