Hatena::Grouprubyist

takuma104のRuby/Rails日記

ツッコミ大歓迎!間違等ありましたらご指摘ください! / はてダはこちらで書いてます。

 | 

2008-03-15

Hexな文字列を、バイナリに直す

| 06:01 | Hexな文字列を、バイナリに直す - takuma104のRuby/Rails日記 を含むブックマーク はてなブックマーク - Hexな文字列を、バイナリに直す - takuma104のRuby/Rails日記 Hexな文字列を、バイナリに直す - takuma104のRuby/Rails日記 のブックマークコメント

たとえば、"0001AABB"とかいう任意の長さのhexな文字列を、packされたstring(この場合、0x00 0x01 0xaa 0xbbなバイナリ)にしたい場合。

def parse_hex_string_to_binstr(str)
  str.scan(/../).map {|e| e.hex}.pack('C*')
end

これ以上短くかけないかなあ?scan(/../)の..が反則臭い。

d:id:Hexaさんから、ご指摘いただきました。ありがとうございます。

Hexaの日記

[ str ].pack("H*")

でOKですねorz. packの"H"というのは盲点でした。ほかにも知らないのあるかなあ。見てみようっと。

トラックバック - http://rubyist.g.hatena.ne.jp/takuma104/20080315
 |