Problem: You have a byte value, or a string of byte values, and you want to use a Ruby script to convert each byte to its equivalent ASCII character.
I just ran into this problem while working on a script to remove binary/garbage characters from a Unix text file. In short, the file had a bunch of binary "garbage" characters in it, and I wanted a clean version of the file that contained only printable ASCII characters in it.
The solution is to use the
chr method on each byte value, like this:
A few more examples
Here are a few more examples, in the form of some slightly-commented output from a Ruby
>> 65.chr => "A" >> 97.chr => "a" # tab >> 9.chr => "\t" # linefeed >> 10.chr => "\n" # form feed >> 12.chr => "\f" # carriage return 13.chr => "\r" # tilde, the last printable character >> 126.chr => "~"
There’s just one person behind this website; if this article was helpful (or interesting), I’d appreciate it if you’d share it. Thanks, Al.