有沒有辦法強制計算機通過使用java代碼更改其日期格式?我的應用程序使用指定的格式將日期存儲在字符串中,並存儲在磁盤上的文件中。所選擇的格式隻影響字符串變量,但不影響文件,因爲它強制使用系統區域設置。我試圖設置區域設置或更改SimpleDateFormat()中的默認區域設置,但它沒有去。我不明白爲什麼系統設置強制String遵循日期模式。任何澄清將不勝感激。系統日期格式
系統日期格式
回答
你的問題並不十分清楚。沒有「系統日期格式」這樣的東西。
避免遺留日期時類
與Java的早期版本中捆綁的舊日期,時間類已被證明是麻煩的,混亂的,和有缺陷的。避免java.util.Date
,.Calendar
和SimpleDateFormat
。這些現在是遺留的,由java.time類代替。
ISO 8601
如果您在序列化文件爲文本的日期時間值到磁盤,使用標準ISO 8601格式。這些格式在各種文化中都很直觀,毫不含糊,而且越來越流行,包括新的互聯網和信息標準。
java.time類在解析/生成日期時間值字符串時默認使用ISO 8601格式。
使用Instant
類以分辨率達到納秒獲取UTC的當前時刻。
Instant instant = Instant.now();
生成一個字符串以表示該時刻爲標準ISO 8601格式的文本。
String output = instant.toString();
2016-12-04T06:12:13.455Z
容易再次解析回到對象。
Instant instant = Instant.parse("2016-12-04T06:12:13.455Z");
通常最好以UTC工作,但如果需要,您可以將該時刻調整爲時區。
ZoneId z = ZoneId.of("America/Montreal");
ZonedDateTime zdt = instant.atZone(z);
String outputZdt = zdt.toString();
2016-12-04T01:12:13.455-05:00 [美國/蒙特利爾]
關於java.time
的java.time框架是建立在Java 8和更高版本。這些類取代了日期時間類legacy,如java.util.Date
,Calendar
,& SimpleDateFormat
。
Joda-Time項目現在位於maintenance mode,建議遷移到java.time。請參閱Oracle Tutorial。並搜索堆棧溢出了很多例子和解釋。規格是JSR 310。
從何處獲取java.time類?
- Java SE 8和SE 9後來
- 內置。
- 帶捆綁實現的標準Java API的一部分。
- Java 9增加了一些次要功能和修復。在ThreeTen-Backport
- Java SE 6和SE 7
- 大部分的java.time功能後移植到Java 6 & 7。
- Android
- 的ThreeTenABP項目適應ThreeTen-反向移植(上述)爲Android特異性。
- 請參閱How to use…。
的ThreeTen-Extra項目與其他類擴展java.time。這個項目是未來可能增加java.time的一個試驗場。
非常感謝您羅勒的幫助。您明確表示,我需要更多的閱讀和練習。我的意思是系統日期格式化控制面板中的設置 - >用戶爲操作系統設置日期和時間格式的區域。該格式似乎覆蓋了JVM環境以外的所有內容,例如我在系統上設置的文件。對不起,我沒有提前回復,因爲我沒有收到有關您評論的電子郵件通知。 –
- 1. 轉換任何日期格式的系統日期格式
- 2. JavaScript - 獲取系統短日期格式
- 3. Java中的系統日期格式
- 4. SqlDatareader GetValue根據系統日期格式返回日期值
- 5. VBA:爲所有系統日期格式設置excel日期格式
- 6. Aspose.cells自定義日期格式與操作系統日期格式無關
- 7. 使用Time.getCurrentTimezone()使用系統格式的格式日期
- 8. 如何在Excel中將日期格式格式化爲系統日期格式VBA
- 9. 更改Windows 7文化不反映在系統日期格式?
- 10. java將小時添加到系統日期和yyyyMMddHHmmss格式
- 11. 獲取系統日期格式字符串的Win32
- 12. 網站如何知道您的公制系統,日期格式...?
- 13. crm 2011試用系統中的日期格式
- 14. 使用什麼系統默認日期格式?
- 15. 使用自定義格式訪問當前系統日期
- 16. Datagridview日期時間格式不使用系統區域設置
- 17. 獲得Android系統的首選日期格式字符串
- 18. 如何獲取系統日期時間格式?
- 19. 將SQL系統日期時間轉換爲非標準格式
- 20. Javascript - 檢索操作系統日期格式
- 21. Delphi7:獲取SQL服務器系統日期和時間格式
- 22. 如何確定用戶的本地系統的日期格式
- 23. 統一日期格式 - 如何?
- 24. 如何在DataGridViewColumn中使用服務器日期時間格式而不是系統日期時間格式
- 25. 預約系統日期
- 26. SQL當前系統日期
- 27. 顯示系統日期
- 28. 獲取系統日期ddmmyyyy
- 29. 日期(「8601格式日期」)?
- 30. 日期格式爲日期
向我們顯示您的代碼。但在此之前,請參閱[如何完成最小化,完整和可驗證示例](/ help/mcve)。 –
這個問題沒有意義。提供更多的細節和示例代碼。如果您將日期時間值作爲文本寫入文件,應該很容易在從應用程序中提取的代碼片段中演示。 –
歡迎來到Stack Overflow!請查看我們的[SO問題清單](http://meta.stackoverflow.com/questions/260648/stack-overflow-question-checklist)來幫助你提出一個好問題,從而得到一個很好的答案。 –