Buffer() в кодировке Windows-1252

81
12 января 2017, 07:14

Привет.

BattleNode.prototype.commandPacket = function (command) {  
  var data = new Buffer(command.length + 3);
  data.writeUInt8(0xFF, 0);
  data.writeUInt8(BE_COMMAND_PACKET, 1);
  data.writeUInt8(this.sequence, 2);
  data.write(command, 3);
  this.sequence = (this.sequence >= 255) ? 0 : this.sequence + 1;
  var packet = this.createBEPacket(data);
  return packet;
}
BattleNode.prototype.createBEPacket = function(payload) {
  var packet = new Buffer(payload.length + 6); // payload + header
  var header = new Buffer([0x42, 0x45, 0x00, 0x00, 0x00, 0x00]);
  var crc = crc32(payload);
  header.writeInt32BE(crc.readInt32LE(0), 2);
  header.copy(packet);
  payload.copy(packet, 6);
  return packet;
}

// Переменная command приходит уже в кодировке Windows-1252. И нужно чтобы буффер создавался с этой же кодировкой.

Пробовал через iconv-lite. Ничего вразумительного не вышло. Может есть идеи?

Answer 1

Начнём по порядку, я не гуру js но, Buffer не имеет кодировки ,это просто набор байтов, что касается iconv-lite то он прекрасно преобразует строки между кодировками, например этот код преобразует string в Buffer с win1251

var string = iconv.encode("Тут строка, большая строка", 'win1251');
READ ALSO
Остановка (пауза) видео Youtube

Остановка (пауза) видео Youtube

Помогите чайникуСитуация такова: модальное окно на CSS, в нем карусель видео с ютуба, при закрытии модали - воспроизведение продолжается

72
Задачка с сортировкой массива

Задачка с сортировкой массива

Есть такой массив объектов

88
Как вставить элемент из переменной

Как вставить элемент из переменной

В переменной b хранится клон объекта span и вместо того чтобы вставился элемент Текст вставляется вот это [object Object]

120
Обратный transition-эффект при ховере до тех пор, пока анимация не закончится

Обратный transition-эффект при ховере до тех пор, пока анимация не закончится

Хотел придумать так, чтобы сделать анимацию при ховере выполняющейся до тех пор, пока сама анимация закончитсяТо есть если подносить мышку...

73