JavaマスターJavaプログラムサンプル集文字列, 日本語処理のサンプル → 全角数字を半角数字に変換する

全角数字を半角数字に変換する

全角数字を半角数字に変換するメソッドを紹介します。

数字は文字コード上で順番に並んでいるため、変換表を使わずに 比較的簡単に変換することができます。

samples/string/japanese/HankakuNumberToZenkakuNumber.java - Eclipse SDK
package samples.string.japanese;

public class HankakuNumberToZenkakuNumber {
  public static String hankakuNumberToZenkakuNumber(String s) {
    StringBuffer sb = new StringBuffer(s);
    for (int i = 0; i < s.length(); i++) {
      char c = s.charAt(i);
      if (c >= '0' && c <= '9') {
        sb.setCharAt(i, (char) (c - '0' '0'));
      }
    }
    return sb.toString();
  }

  public static void main(String[] args) {
    System.out.println(hankakuNumberToZenkakuNumber("お買い上げ金額は¥1980です。"));
  }
}

コマンド プロンプト

C:\JavaMaster\bin>java -cp . samples.string.japanese.HankakuNumberToZenkakuNumber 
お買い上げ金額は¥1980です。