跳转至

PersimmonM Buffer

  • new Buffer(array, encoding)

    使用array分配一个新的 Buffer。encoding 参数制定字符串编码。

    • 参数说明:

      参数 类型 是否必要 说明
      array array 要从中复制的字节数组
      encoding string 字符串编码。 默认: 'utf8'
  • new Buffer(size, encoding)

    分配一个大小为 size 字节的新建的 Buffer。encoding 参数制定字符串编码。

    • 参数说明:

      参数 类型 是否必要 说明
      size number 新建的 Buffer 期望的长度
      encoding string 字符串编码。 默认: 'utf8'
  • new Buffer(string, encoding)

    创建一个包含给定字符串 string 的 Buffer。encoding 参数制定字符串编码。

    • 参数说明:

      参数 类型 是否必要 说明
      string string 要编码的字符串
      encoding string 字符串编码。 默认: 'utf8'
  • Buffer.length

    • 返回类型: number

      buf的长度

  • Buffer.fill(value, offset, end, encoding)

    如果未指定 offset 和 end,则填充整个 buf。 这个简化使得一个 Buffer 的创建与填充可以在一行内完成。

    value 如果不是一个字符串或整数,则会被强行转换为 uint32 值。

    如果 fill() 操作的最后一次写入的是一个多字节字符,则只有字符中适合 buf 的第一个字节会被写入。

    • 参数说明:

      参数 类型 是否必要 说明
      value string,buffer,int 用来填充 buf 的值
      offset number 开始填充 buf 前要跳过的字节数。默认: 0。
      end number 结束填充 buf 的位置(不包含)。默认: buf.length。
      encoding string 如果 value 是一个字符串,则这是它的字符编码。默认: 'utf8'。
    • 返回类型: Buffer

      buf 的引用

  • Buffer.copy(target, targetStart, sourceStart, sourceEnd)

    拷贝 buf 的一个区域的数据到 target 的一个区域,即便 target 的内存区域与 buf 的重叠。

    • 参数说明:

      参数 类型 是否必要 说明
      target Buffer 要拷贝进的 Buffer
      targetStart number target 中开始拷贝进的偏移量。 默认: 0
      sourceStart number buf 中开始拷贝的偏移量。 默认: 0
      sourceEnd number buf 中结束拷贝的偏移量(不包含)。 默认: buf.length
    • 返回类型:number

      被拷贝的字节数。

  • Buffer.toString([encoding, start, end)

    根据 encoding 指定的字符编码解码 buf 成一个字符串。 start 和 end 可传入用于只解码 buf 的一部分。

    • 参数说明:

      参数 类型 是否必要 说明
      encoding string 解码使用的字符编码。 默认:utf8
      start number 开始解码的字节偏移量。默认: 0
      end number 结束解码的字节偏移量(不包含)。 默认: buf.length
    • 返回类型: string

      解码后的字符串

  • Buffer.write(string, offset, length, encoding)

    根据 encoding 的字符编码写入 string 到 buf 中的 offset 位置。 length 参数是写入的字节数。 如果 buf 没有足够的空间保存整个字符串,则只会写入 string 的一部分。 只部分解码的字符不会被写入。

    • 参数说明:

      参数 类型 是否必要 说明
      string string 要写入 buf 的字符串。
      offset number 开始写入 string 前要跳过的字节数。默认: 0。
      length number 写入的字节数。默认: buf.length - offset。
      encoding string string 的字符编码。默认: 'utf8'。
    • 返回类型: number

      写入的字节数

  • Buffer.concat(target)

    合并target

    • 参数说明:

      参数 类型 是否必要 说明
      target Buffer 需要合并的buf
    • 返回类型: Buffer

      返回合并后新建的Buffer

  • Buffer.read family

    以1, 2或4字节作为大字节或小字节数的偏移量来读取buf中的二进制数据

    1. Buffer.readInt8(offset)
    2. Buffer.readUInt8(offset)
    3. Buffer.readInt16BE(offset)
    4. Buffer.readUInt16BE(offset)
    5. Buffer.readInt16LE(offset)
    6. Buffer.readUInt16LE(offset)
    7. Buffer.readInt32BE(offset)
    8. Buffer.readUInt32BE(offset)
    9. Buffer.readInt32LE(offset)
    10. Buffer.readUInt32LE(offset)

    11. 参数说明:

      参数 类型 是否必要 说明
      offset number 读取的偏移量。默认: 0。
    12. 返回类型:number

      读取到的二进制数据

  • Buffer.writeUInt family

    1. Buffer.writeUInt8(value, offset)
    2. Buffer.writeUInt16BE(value, offset)
    3. Buffer.writeUInt16LE(value, offset)
    4. Buffer.writeUInt32BE(value, offset)
    5. Buffer.writeUInt32LE(value, offset)

    6. 参数说明:

      参数 类型 是否必要 说明
      value number 写入的值
      offset number 写入的偏移量。默认: 0。
    7. 返回类型:number

      偏移量加上写入的字节

  • Buffer.jsonParse(start,end)

    把buf中的一段数据转换成JSON对象。

    • 参数说明:

      参数 类型 是否必要 说明
      start number 指定要转换成JSON对象的数据的起始位置。默认:0
      end number 指定要转换成JSON对象的数据的结束位置。默认:Buffer.length
    • 返回类型:object

      根据指定数据返回的JSON对象。

评论