Ich möchte die Benutzereingabe von der Befehlszeile für einen bestimmten Protokolleintrag lesen. Meine Methode eine Zeichenfolge zu lesen:Java-Lesekette mit eckigen Klammern
public static String readString(String message)
{
System.out.print(message);
Scanner scan = new Scanner(System.in);
String response = null;
while (response == null || response.equals("") || response.length() <= 4)
{
if(response != null)
{
System.out.println("Type atleast 5 chars");
System.out.println(message);
}
response = scan.next();
}
return response;
}
Also, solange ich tippe nur normale Literale, alles funktioniert gut. Aber die Eingabe so etwas wie:
"[log-123] Beispieltext"
kehrt in Splitting die Antwort.
Warum also dieses Problem auftritt und wie man es vermeidet, so dass alle Zeichen bis zum Zeilenumbruch gelesen werden.
Was ist der Zweck der Übergabe von Nachrichten in der ReadString-Methode? – Ankit