Zeichenfolgen in Java formatieren

7

Ich lese den seriellen Puffer mit readLine () -Methode. Die von readLine () zurückgegebene Zeichenfolge hat das Format "str1: str2". In einer while-Schleife, wenn ich readLine () mehrmals für eine Antwort des seriellen Port-Befehls verwende, bekomme ich seltsame Ausgaben wie folgt:

%Vor%

Aber ich brauche die Ausgabe wie folgt formatiert:

%Vor%

Ich habe die Split-Methode für die Zeichenfolge verwendet und die zwei Zeichenfolgen mit Trennzeichen getrennt als ':' abgerufen. Aber jetzt muss ich String1 mit Leerzeichen anfügen, um alle Doppelpunkte auszurichten.

Es tut mir leid, wenn meine Problembeschreibung seltsam ist. Aber wenn jemand das Problem verstanden hat, können Sie bitte vorschlagen, wie es geht?

    
Surjya Narayana Padhi 14.12.2009, 05:51
quelle

3 Antworten

6

Sehen Sie sich System.out.printf an

    
TofuBeer 14.12.2009, 05:53
quelle
18

Der einfachste Weg, dies zu erreichen, ist System.out.format () . Auf diese Weise können Sie C printf Formatbezeichner verwenden. Ein Beispiel:

%Vor%

Dies wird ausgegeben:

%Vor%

Siehe auch die Dokumentation für die Klasse Formatter , um zu lernen mehr über die Formatzeichenfolge-Syntax.

    
Vijay Mathew 14.12.2009 06:04
quelle
4

System.out.format ("% 30s:% s", str1, str2);

Gibt die erste Zeichenfolge mit einer festen Breite von 30 Zeichen aus.

    
Mayuresh 14.12.2009 06:19
quelle

Tags und Links