Open In App

Node.js Buffer.readIntBE() Method

Improve
Improve
Improve
Like Article
Like
Save Article
Save
Share
Report issue
Report

The Buffer.readIntBE() method is used to read the number of bytes for a buffer at a given offset and interprets the result as a two’s complement signed value.

Syntax:

buffer.readIntBE( offset, byteLen )

Parameters: This method accepts two parameters as mentioned above and described below: offset: It specifies the position of buffer object. It represents the number of bytes to skip before starting to read. The value of offset lies between the range 0 to buffer.length – byteLen.
byteLen: It is an integer value that indicates the number of bytes that are to be read from the given offset. This parameter value lies between 0 and 6.

Return value: It returns an integer value with byteLen bytes from the specified offset in big endian.

Example 1:




// Node.js program to demonstrate the
// buffer.readIntBE(offset, bytelen) method 
const buff = Buffer.from([0x11, 0x12, 0x34, 0x56, 0x89, 0xcd]);
  
console.log(buff.readIntBE(0, 5).toString(16));
  
console.log(buff.readIntBE(0, 4).toString(16));


Output:

1112345689
11123456

Example 2:




// Node.js program to demonstrate the
// buffer.readIntBE(offset, bytelen) method 
const buff = Buffer.from([0x11, 0x12, 0x34, 0x56, 0x89, 0xcd]);
  
console.log(buff.readIntBE(4, 6).toString(16));
  
console.log(buff.readIntBE(3, 0).toString(16));


Output:

buffer.js:831
    throw new RangeError('Index out of range');
    ^

RangeError: Index out of range
    at checkOffset (buffer.js:831:11)
    at Buffer.readIntBE (buffer.js:938:5)
    at Object. (/home/cg/root/8545664/main.js:8:17)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)
    at Module.runMain (module.js:604:10)
    at run (bootstrap_node.js:389:7)

The above example shows the error because its parameters are not in the valid range.

Note:

  • To get the values in Little endian format you can use Buffer.readIntLE() method.
  • The above program will compile and run by using the node index.js command.

Reference: https://nodejs.org/api/buffer.html#buffer_buf_readintbe_offset_bytelength


Last Updated : 13 Oct, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads