10進の整数を変換する方法です。
10進数→2進数
packとunpackを利用する。
print unpack( 'B8', pack( 'C', 31 ) ); # 正値
00011111
print unpack( 'B8', pack( 'C', -31 ) ); # 負値
11100001
10進数→8進数
printfを利用する。
printf( '%o', 31 );
37
10進数→16進数
packとunpackを利用する。
print unpack( 'h3', pack( 'C', 31 ) );
1f
sprintfを利用する。
printf( '%x', 31 );
1f
10進数→文字列
packを利用する。
print pack( 'C', 97 );
a
packはまとめて利用することも出来ます。
print pack( 'C*', 97, 98, 99 ); print pack( 'C*', 227, 129, 130 );
abc あ # UTF-8の場合
更新履歴
- 2014-10-21
- 固定ページから投稿に変更
- 2008-06-13
- 公開