1220 Stimmen

Wie kann ich eine ganze Zahl mit Nullen auf der linken Seite auffüllen?

Wie kann man ein linkes Pad int mit Nullen bei der Umwandlung in eine String in Java?

Ich bin im Grunde suchen, um aufzufüllen Ganzzahlen bis zu 9999 mit führenden Nullen (z. B. 1 = 0001 ).

1959voto

Yoni Roit Punkte 27312

Utilisez java.lang.String.format(String,Object...) wie diese:

String.format("%05d", yournumber);

für Null-Padding mit einer Länge von 5. Für die hexadezimale Ausgabe ersetzen Sie das d mit einer x wie in "%05x" .

Die vollständigen Formatierungsoptionen sind als Teil von java.util.Formatter .

191voto

bvdb Punkte 18946

Angenommen, Sie möchten Folgendes drucken 11 als 011

Sie könnten einen Formatierer verwenden : "%03d" .

enter image description here

Sie können diesen Formatierer wie folgt verwenden:

int a = 11;
String with3digits = String.format("%03d", a);
System.out.println(with3digits);

Alternativ dazu unterstützen einige Java-Methoden diese Formatierer direkt:

System.out.printf("%03d", a);

123voto

Boris Pavlović Punkte 60636

Wenn Sie aus irgendeinem Grund Java vor Version 1.5 verwenden, können Sie es mit der Apache Commons Lang Methode versuchen

org.apache.commons.lang.StringUtils.leftPad(String str, int size, '0')

36voto

Omar Kooheji Punkte 52681

Habe dieses Beispiel gefunden... Werde es testen...

import java.text.DecimalFormat;
class TestingAndQualityAssuranceDepartment
{
    public static void main(String [] args)
    {
        int x=1;
        DecimalFormat df = new DecimalFormat("00");
        System.out.println(df.format(x));
    }
}

Ich habe das getestet und:

String.format("%05d",number);

Beide funktionieren, für meine Zwecke ist String.Format besser und prägnanter.

33voto

Brijesh Patel Punkte 347

Versuchen Sie dies:

import java.text.DecimalFormat; 

DecimalFormat df = new DecimalFormat("0000");

String c = df.format(9);   // Output: 0009

String a = df.format(99);  // Output: 0099

String b = df.format(999); // Output: 0999

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X