hexdump(offset = 0, length = nil, width = 16) -> String | nilRuby 3.1 から[permalink][rdoc][edit]-
バッファの内容を 16 進ダンプ形式の文字列で返します。
各行は、バッファの先頭からの位置、16 進数で表したバイト列、印字できる文字による表現の順に並びます。この表示形式は将来変更される可能性があります。
メモリ領域を指していないバッファでは nil を返します。これは IO::Buffer#null? が真の場合です。
- [PARAM]
offset: - ダンプを開始する位置をバイト単位の整数で指定します。
- [PARAM]
length: - ダンプする長さをバイト単位の整数で指定します。省略した場合は offset からバッファの終わりまでです。
- [PARAM]
width: - 1 行に表示するバイト数を整数で指定します。
- [EXCEPTION]
ArgumentError: - offset と length の合計がバッファの大きさを超える場合に発生します。
- [EXCEPTION]
ArgumentError: - width に 1 未満を指定した場合に発生します。
例: メモリ領域を指していないバッファbuf = IO::Buffer.for("Hello World") puts buf.hexdump # => 0x00000000 48 65 6c 6c 6f 20 57 6f 72 6c 64 Hello World
例: 位置と長さを指定するbuf = IO::Buffer.new(4) buf.free p buf.hexdump # => nil
例: 1 行に表示するバイト数を指定するbuf = IO::Buffer.for("Hello World") puts buf.hexdump(6, 5) # => 0x00000006 57 6f 72 6c 64 Worldbuf = IO::Buffer.for("Hello World") puts buf.hexdump(0, 11, 4) # => 0x00000000 48 65 6c 6c Hell # 0x00000004 6f 20 57 6f o Wo # 0x00000008 72 6c 64 rld[SEE_ALSO] IO::Buffer#inspect, IO::Buffer#null?
- [PARAM]