我想將我自己的DateTimeFormatter設置爲全局格式化器。當我做了以下行:Java 8設置全球時間格式化器
ZonedDateTime.now();
我得到:
2016-03-30T08:58:54.180-06:00[America/Chicago]
如果我這樣做:
ZonedDateTime.now().format(DateTimeFormatter.RFC_1123_DATE_TIME)
我得到:
Wed, 30 Mar 2016 9:00:06 -0600
我想集團的印刷是什麼但上午/下午,所以我做了我的自定義格式化程序並打印出來像這樣的時候:
DateTimeFormatter FORMATTER = DateTimeFormatter.ofPattern("EEE, dd MMM yyyy HH:mm:ss a Z");
ZonedDateTime.now().format(FORMATTER);
這給了我:
Wed, 30 Mar 2016 9:00:06 AM -0600
但我在任何地方使用這種方法.now()
進行日誌記錄,我不希望在代碼中到處定義格式。有沒有辦法將格式化程序配置爲調用.now()
方法時要使用的默認格式?我想如春bean的配置方法什麼的.....
爲什麼不製作FORMATTER靜態單例並在任何地方訪問? – Loc
我不確定我是否理解。 'ZonedDateTime.now()'不依賴於任何格式化程序。如果你想在調用format之後進行格式化,爲什麼不在某個地方使用它呢? – Tunaki
你得到的是toString結果:你在使用println嗎?記錄儀?一個序列化程序?如果你處於toString情況下,沒有太多事情要做。 – pdem