Ruby:打印不可打印的数据字符串

Ruby:打印不可打印的数据字符串,ruby,string,printing,hex,Ruby,String,Printing,Hex,如果我有一个变量x,它有时是一个普通的可打印字符串,有时是一些随机的十六进制数据(包括不可打印的字符),那么我如何可靠地打印它呢?例: def print(x) puts("%-15s" % x) end x = "test" print(x) x = Array.new(256) { rand(256) }.pack('c*') print(x) 如果你想摆脱“…”: 有时会是一个…,打印,将空格填充?输入错误?虽然您可能知道这一点,但请注意,String#%不要求参数为数组,如

如果我有一个变量x,它有时是一个普通的可打印字符串,有时是一些随机的十六进制数据(包括不可打印的字符),那么我如何可靠地打印它呢?例:

def print(x)
  puts("%-15s" % x) 
end

x = "test"
print(x) 
x = Array.new(256) { rand(256) }.pack('c*')
print(x) 
如果你想摆脱
“…”


有时会是一个…
打印,将空格填充
?输入错误?虽然您可能知道这一点,但请注意,
String#%
不要求参数为数组,如果只传递了一项,即
将“%-15s”%x.inspect
def print(x)
  puts "%-15s" % [x.inspect]
end
puts "%-15s" % [x.inspect[1..-2]]