Проблемы с бинарными строками в Ruby - PullRequest
1 голос
/ 25 июля 2011

В настоящее время я пытаюсь заставить мой скрипт Ruby вывести следующее:

"\ x41" * 28 "\ x42 \ x13 \ x40 \ x00"

Мой код:

puts "\x41" * 28 "\x42\x13\x40\x00"

вместо вывода, как вы могли ожидать AAAAAAAAAAAAAAAAAAAAAAAAAAAAB! @

Я знаю, что это «переведенные» значения, но как мне избежать этого перевода? Я искал .pack (), но я не мог понять это.

Заранее спасибо.

Dar56

1 Ответ

4 голосов
/ 25 июля 2011

Как насчет

puts "\\x41" * 28 + "\\x42\\x13\\x40\\x00"

или

puts '\x41' * 28 + '\x42\x13\x40\x00'

Случай 1 работает, потому что \\ является escape-последовательностью, означающей \, а случай 2 работает, потому что литералы внутри '' проверять только escape-последовательности \' и \\.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...