簡體   English   中英

SimpleDateFormat解析總是返回EDT日期

[英]SimpleDateFormat parse always returns EDT date

我這里有一個問題。 我已經閱讀了所有相關文章,但無法擺脫這種情況。 我正在嘗試將美國/太平洋日期從字符串轉換為日期對象:

SimpleDateFormat df = new SimpleDateFormat("dd-MM-yy HH:mm:SS a z");
df.setTimeZone(TimeZoneUtil.getTimeZone("US/Pacific"));
String userTime = df.format(date);// User Time - Returns correct US/Pacific time
Date userDate =  df.parse(userTime); // Always returns the date in EDT

我知道Date沒有自己的格式,但是我完全被狐狸看成是解析方法返回了EDT時間。

我的問題是我想將userTime字符串轉換為Date對象,其格式/時區與我設置為SimpleDateFormat的格式/時區相同。 我需要幫助的人..拼命等待。 提前致謝

查看文檔

解析
[...] TimeZone值可能會被覆蓋,具體取決於給定的模式和文本中的時區值。 可能需要恢復以前通過調用setTimeZone設置的任何TimeZone值,以進行進一步的操作。

希望這可以幫助

java.util.Date對象不在時區中。 調用toString時,構建的字符串將位於jvm的本地時區。

如果要在其他時區構建字符串,則需要構建新的SimpleDateFormat或在設置格式之前再次設置時區。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM