28

0 から 255 までの数値を 16 進数形式に変換しようとしています。を使用するsprintf("%X", 1)と が得られます1が、出力の幅は常に 1 ではなく 2 (先頭に 0 を含む) にする必要があります。これはどのように行うことができますか?

4

1 に答える 1

61

使用%02X:

sprintf("%02X",1)    # ->  "01"
sprintf("%02X",10)   # ->  "0A"
sprintf("%02X",16)   # ->  "10"
sprintf("%02X",255)  # ->  "FF"
于 2012-06-17T09:15:01.883 に答える