ASCII-8bit
- это кодировка для Ruby. У него псевдоним BINARY
, и это просто так. ASCII-8bit
это не кодировка символов, а скорее способ сказать, что строка является двоичными данными и не должна обрабатываться как текст. Поскольку функции pack
/ unpack
предназначены для работы с двоичными данными, вы никогда не должны предполагать, что возвращаемый файл может быть распечатан в любой кодировке, если строка пакета ВЕСЬ не состоит из символьных производных. Если вы уточните, какова общая цель, возможно, мы могли бы дать вам лучшее решение.
Если вы изолируете шестнадцатеричный код UTF-8 в переменную, скажем code
, которая является строкой шестнадцатеричного формата минус знак процента:
utf_char=[code.to_i(16)].pack("U")
Объедините их с остальной частью строки, вы можете сделать свою строку.