Это, вероятно, простой вопрос, но я пытаюсь просмотреть кодировки и байты (которые я давно не рассматривал) для реализации двоичного протокола.
Похоже, что нормальные символы1 байтНо когда вы кодируете их в шестнадцатеричном формате, это уменьшает вдвое количество байтов.
ruby-1.9.2-p180 :001 > "abcd".bytesize
=> 4
ruby-1.9.2-p180 :002 > ["abcd"].pack("H*")
=> "\xAB\xCD"
ruby-1.9.2-p180 :003 > ["abcd"].pack("H*").bytesize
=> 2
Я также ожидал, что шестнадцатеричное кодирование получит символы 0-9 и AF
Может кто-нибудь помочьуточнить, что здесь происходит?А также, если вы можете указать мне на хороший обзор кодировок в целом, который есть в сети, я бы с удовольствием обновился.Я еще не видел ни одного простого обзора этого, что было бы здорово.
Спасибо!