あんのたんが書いてくれた記事の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| "%02X" % b }.join(") end end とてもシンプルですね。 これだけだとあまりにも内容がないので、少し内容がずれますが、おまけです。 RIFFのファイルを読み込み
![16進文字列とバイト列を相互変換する(ruby)|TechRacho by BPS株式会社](https://cdn-ak-scissors.b.st-hatena.com/image/square/2fa32c73a24352375795563d17ee98ae630f6117/height=288;version=1;width=512/https%3A%2F%2Ftechracho.bpsinc.jp%2Fwp-content%2Fuploads%2F2011%2F08%2F1313939770_text-x-hex.png)