0
我們需要使用的輸入格式如何正確掃描LocalDateTime?
dd.MM. HH:mm
掃描儀(不使用額外的變量!),我怎樣才能得到這些掃描值到開始變量?
我的程序不工作。始終打印「輸入無效!」雖然我的輸入不似有不妥:
System.out.println("Start:");
sc.nextLine();
sc.findInLine("(\\d\\d)\\.(\\d\\d)\\. (\\d\\d):(\\d\\d)");
try{
MatchResult mr =sc.match();
int month = Integer.parseInt(mr.group(2));
int day = Integer.parseInt(mr.group(1));
int hour = Integer.parseInt(mr.group(3));
int minute = Integer.parseInt(mr.group(4));
LocalDateTime start = LocalDateTime.of(year, month, day, hour, minute);
System.out.println(start);
} catch (IllegalStateException e)
{
System.err.println("Invalid input!");
}
我輸入:
20.08 13:00
不直接工作-.- 輸出: 「無效的輸入」 – Johnny
@Johnny注意你的問題中的輸入是'20.08 13:00',它缺少一個點,它應該是'20.08。 13:00'。你測試過了嗎? – Tunaki
嘿,男人非常感謝! Finaly它的工作原理:-) 我的輸入是不斷錯誤的,最後一個點始終缺失! – Johnny