16進文字列とバイト列を相互変換する(ruby)

あんのたんが書いてくれた記事のRuby版です。 を書こうと思ったのですが、StackOverflowに同じのがあったのと、こちらのほうがコードが綺麗だったので引用しておきます。 class String def hex2bin s = self raise "Not a valid hex string" unless(s =~ /^[\da-fA-F]+$/) s = '0' + s if((s.length & 1) != 0) s.scan(/../).map{ |b| b.to_i(16) }.pack('C*') end def bin2hex self.unpack('C*').map{ |b … 続きを読む 16進文字列とバイト列を相互変換する(ruby)