You are currently viewing Node.js Buffer | Метод Buffer.writeIntBE()

Node.js Buffer | Метод Buffer.writeIntBE()

buf.writeIntBE(value, offset, byteLength)

ВерсияИзменения
v10.0.0Удалено noAssert и больше нет неявного принуждения к смещению и byteLengthuint32
v0.11.15Добавлено в: v0.11.15
  • value <целое число> Число, в которое нужно записать buf.
  • offset <целое число> Количество байтов, которые необходимо пропустить перед началом записи. 
  • Должен удовлетворить 0 <= offset <= buf.length - byteLength.
  • byteLength <целое число> Количество байтов для записи. 
  • Должен удовлетворить 0 < byteLength <= 6.
  • Возвращает: <целое число> offset плюс количество записанных байтов.

Записывает byteLength байты value в buf в указанном offset качестве с большим концом. Поддерживает точность до 48 бит. Поведение не определено, когда value это что-либо иное, чем целое число со знаком.

import { Buffer } from 'buffer';

const buf = Buffer.allocUnsafe(6);

buf.writeIntBE(0x1234567890ab, 0, 6);

console.log(buf);
// Prints: <Buffer 12 34 56 78 90 ab>
const { Buffer } = require('buffer');

const buf = Buffer.allocUnsafe(6);

buf.writeIntBE(0x1234567890ab, 0, 6);

console.log(buf);
// Prints: <Buffer 12 34 56 78 90 ab>

Метод Buffer.writeIntBE() используется для записи указанных байтов значения в буфер с заданным смещением в формате big endian. Он поддерживает точность до 48 бит. Если значение отличается от целого числа со знаком, то его поведение не определено.

Синтаксис:

buffer.writeIntBE( value, offset, byteLength )

Параметры: Этот метод принимает три параметра, как указано выше и описано ниже:

  • value (ценность): Он указывает номер, который должен быть записан в объект буфера.
  • offset (смещение): Он определяет количество байтов, которые необходимо пропустить перед началом записи в буфер. Значение смещения лежит 0 <= offset <= buf.length – byteLength.
  • byteLength (По длине): Он определяет количество байтов для записи в буфер. Значение длины байта заключается 0 < Длина байта.

Возвращаемое значение: Он возвращает целое значение, указывающее смещение плюс количество записанных байтов.

Пример 1:

// Node.js program to demonstrate the
// Buffer.writeIntBE() method

// Creating a buffer of given size
const buffer = Buffer.allocUnsafe(6);

// Write into the buffer
buffer.writeIntBE(0x10, 0, 6);

// Display the Buffer element
console.log(buffer);

// Creating a buffer of given size
const buffer2 = Buffer.allocUnsafe(6);

// Write into the buffer
buffer2.writeIntBE(0x20, 0, 4);

// Display the Buffer element
console.log(buffer2);

Выход:

<Buffer 00 00 00 00 00 10>
<Buffer 00 00 00 20 69 74>

Пример 2:

// Node.js program to demonstrate the
// Buffer.writeIntBE() method

// Creating a buffer of given size
const buffer = Buffer.allocUnsafe(6);

// Write into the buffer
buffer.writeIntBE(023, 0, 6);

// Display the Buffer element
console.log(buffer);

// Creating a buffer of given size
const buffer2 = Buffer.allocUnsafe(6);

// Write into the buffer
buffer2.writeIntBE(1010, 0, 6);

// Display the Buffer element
console.log(buffer2);

Выход:

<Buffer 00 00 00 00 00 13>
<Buffer 00 00 00 00 03 f2>

Примечание: Приведенная выше программа будет скомпилирована и запущена с помощью node index.js команды.

Ссылка: https://nodejs.org/api/buffer.html#buffer_buf_writeintbe_value_offset_bytelength