Java ゼロ埋め スペース埋めする方法
Javaで数値をゼロ埋めする方法と文字列をスペース埋めする方法です。
ゼロ埋めやスペース埋めというのは、数値や文字列を指定の桁数になるようにパディングするってことです。例えば「123」という数値なら「00123」という感じにすること。
ここでは Javaで数値をゼロ埋めする方法と文字列をスペース埋めする方法 を紹介します。
String.formatメソッドを使う
Stringクラスの「format()」メソッドを使えば、数値や文字列を簡単にゼロ埋めすることができます。
String.format(書式文字列, 値);
書式文字列には下記のような仕様があります。仮に5桁でゼロ埋めしたい場合には「%05d」と書きます。
- %・・・書式文字列であることを表す指示子。
- 0・・・埋める文字。ここでは0を指定。
- 5・・・桁数。ここでは5桁。
- d・・・出力する値の型。ここではdecimal。
実際のコードを書くとこうなります。ついでにスペース埋めのコードも書いてみましょう。
System.out.println("############### ゼロ埋め ################");
System.out.println(String.format("%03d",123)); // 123
System.out.println(String.format("%04d",123)); // 0123
System.out.println(String.format("%05d",123)); // 00123
System.out.println("############### スペース埋め ################");
System.out.println(String.format("%3s","XYZ")); // XYZ
System.out.println(String.format("%4s","XYZ")); // XYZ
System.out.println(String.format("%5s","XYZ")); // XYZ
結果はこうなります。
############### ゼロ埋め ################
123
0123
00123
############### スペース埋め ################
XYZ
XYZ
XYZ
ふむ、いい感じですね。
参考サイト
String.formatの実体はFormatterクラスです。どのような書式文字列があるかについては下記のサイトで確認ください。
まとめ
Javaで数値をゼロ埋めする方法と文字列をスペース埋めする方法を紹介しました。
実務の中で数値をゼロ埋めするシチュエーションといえば、社員番号や請求書番号などによる桁合わせなどがあるでしょうか。スペース埋めは固定長ファイルの作成なんかで利用しますね。
いずれも実務ではよく使うので覚えておきましょう。
おつかれさまでした。