作爲DateTimeFormatter.ofLocalizedDateTime(FormatStyle dateStyle, FormatStyle timeStyle)
方法的2個參數,我可以傳遞什麼?我試圖JavaDoc建議但我得到這個錯誤。我假設你明白DateTimeFormatter應該能夠像JavaDoc所暗示的那樣格式化LocalDate和/或LocalTime對象,並且我不認爲我誤解了,因爲JavaDoc顯示了它的一個示例。 :DateTimeFormatter.ofLocalizedDateTime的第二個參數的異常?
import java.time.*;
import java.util.*;
import java.time.format.*;
class Main {
public static void main(String[] args) {
LocalDate pieDay = LocalDate.of(2017, Month.JANUARY, 23);
LocalTime midnight = LocalTime.of(0,0);
LocalDateTime pieTime = LocalDateTime.of(pieDay, midnight);
DateTimeFormatter f2 = DateTimeFormatter.ofLocalizedDateTime(FormatStyle.SHORT,
FormatStyle.SHORT);
f2.format(pieDay); // Exception here at runtime
f2.format(pieTime);
}
}
這裏是我的這個實驗沙箱:https://repl.it/JzHb/28但請運行自己的這個代碼片斷的版本給它之前驗證你的答案。
Exception in thread "main" java.time.temporal.UnsupportedTemporalTypeException:
Unsupported field: ClockHourOfAmPm
它說'getDefault()'方法不存在,它不。你爲什麼認爲['FormatStyle'](https://docs.oracle.com/javase/8/docs/api/java/time/format/FormatStyle.html)有這樣一種方法? – Andreas
對不起,這個混亂。我更新了我的問題。 – djangofan
當然'f2.format(pieDay)'由於**'LocalDate'沒有*時間*字段**而導致'Unsupported field:ClockHourOfAmPm'失敗。如果您想格式化僅限日期的值,請使用'ofLocalizedDate()'。 – Andreas