我使用這種格式在Joda-Time:喬達時間時區不同,導致主線代碼VS測試
MM/dd/yyyy HH:mm:ss zzzz
在運行我的應用程序將打印2015年12月16日9點52分37秒中部標準時間,但在我的測試中,它打印12/16/2015 09:52:37 -07:00。
我發現ZZZZ文檔的模式說:
朗特定非定位格式(例如,「太平洋標準時間」)如果 本地化數據不可用,本地化GMT格式用於 (例如GMT-08:00)。
本地化是指語言環境嗎?我想讓測試輸出與主線代碼輸出一致的日期。
檢查您的生產和測試機器的語言環境和時區設置(例如,這些將是'locale'命令和[在某些發行版上檢查'/ etc/timezone'](http://stackoverflow.com/q/3118582/466738),'date'命令也會顯示不同在時區值中)。發佈更多關於您的環境的信息,那麼它可能會帶來更好的答案。 –
不知道這是否有幫助,但有問題的實際代碼行是'new DateTime()。toString(DateTimeFormat.forPattern(「MM/dd/yyyy HH:mm:ss zzzz」)'我玩過添加一個語言環境DateTimeFormatter,但得到相同的結果 – Barry
如果你想把它作爲答案我可以接受它我認爲這是一個機器設置,我最終重構代碼有點和事情開始工作 – Barry