我目前正在尝试让我的 Ruby 脚本输出以下内容:
"\x41"* 28 "\x42\x13\x40\x00"
我的代码是:
puts "\x41" * 28 "\x42\x13\x40\x00"
它并没有像你期望的那样输出: AAAAAAAAAAAAAAAAAAAAAAAAAAAAB‼@
我知道这是“已翻译”的值,但如何避免这种翻译?我一直在研究 .pack() 但我无法弄明白。
提前致谢。
Dar56
最佳答案
怎么样
puts "\\x41" * 28 + "\\x42\\x13\\x40\\x00"
或
puts '\x41' * 28 + '\x42\x13\x40\x00'
情况 1 有效,因为 \\
是一个转义序列,意思是 \
而情况 2 有效,因为 ''
中的文字只检查\'
和 \\
转义序列。
关于ruby - Ruby 中二进制字符串的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6810041/