sprintf("%02X",num); や
sprintf("%2d",num)
の様に16進右桁揃えで整形するスマートな方法はありますか?