2017-08-25 9 views
-1

解析された文字列をどのようにフォーマットするのですか?例えば解析された文字列をLongにフォーマットする

ph = "0412456839"; 
n = Long.parseLong(ph); 

I nが印刷すると、私は(0なし)を取得:私はpH値と同じように印刷したい

412456839 

。私はいつでもできる

System.out.println("0"+n); 

しかし、それをフォーマットする方法はありますか?

答えて

3

java.util.Formatter

System.out.printf("%010d\n", n); 

    % 0 10 d 
    ^^^
     | | decimal 
     | width 
     zero-pad 

を使用して、あなたがSystem.outへの書き込みの代わりにStringで出力が必要な場合は、

を使用
String s = String.format("%010d", n); 
+0

フォーマット文字列では、 '\ n 'の代わりにシステム依存の改行(' \ n \ r'でもよい)に '%n'を使うことができます –

0

DecimalFormatを作成できます。これにより、独自の書式設定規則を使用して数値を文字列に書式設定することができます。この場合、先行する0を含む10桁の数字になるように書式を設定しています。

String ph = "0412456839"; 
Long n = Long.parseLong(ph); 
String formattedN = new DecimalFormat("0000000000").format(n); 
System.out.println(formattedN); 

あなたは、Apache Commonsのを使用している場合は、あなたが使用することができます。

int paddingLength = 10; 
    String paddingCharacter = "0"; 
    StringUtils.leftPad("" + n, paddingLength, paddingCharacter); 
関連する問題