スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[Java]書式指定で基数指示子「0x」付きの16進表示

10進を16進にするだけならば簡単なのですが、
今回は「0x0000」と基数指示子付きの4桁で表示したかったのです。

でもでも基本的なところだから、いいAPIがあるんだろうと思って調べました。

まずはよく知られているjava.lang.Integerを使う例です。

Integer.toHexString(666);


戻り値は

29a


これだと不十分です。。。

次は今回の目的である書式指定を行う例です。使うのはjava.util.Formatter

Formatter formatter = new Formatter();
formatter.format("%#06x", 666);
// Formatter出力先のAppendableインスタンスを取得
// 引数なしコンストラクタの場合はStringBuilder
StringBuilder output = (StringBuilder)formatter.out();


この場合outputの中身は

0x029a


となります。
よっしゃ、でけた。


書式指示子の説明

# :フラグ、基数指示子 (16進では0x)を出力
06:最小フィールド幅、6桁表示で足りない分を0で埋める(2桁分は0xということで、、ここ弱いかなぁ)
x :基数 16 の整数として書式設定

<Javadoc>
java.util.Formatter

スポンサーサイト

comment

管理者にだけ表示を許可する

自己紹介

煩悩即菩提

Name:煩悩即菩提


三流SEです。
開発は基本Javaです。
Androidアプリ作り隊。。

お絵かきを少々しとります。
こちらもぱっととしないのが悩みです。

bonnosokubodaiをフォローしてください

Pixivアカウント

カレンダー   
Recomend


ビデオニュース・ドットコム
検索フォーム
最新記事
最新コメント
月別アーカイブ
カテゴリ
最新トラックバック
リンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。