亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Java 的 SimpleDateFormat 解析日期不正確

Java 的 SimpleDateFormat 解析日期不正確

慕姐8265434 2023-03-09 15:04:04
我正在嘗試使用“yyyymmddHHssmm”格式解析時間戳。我有兩個這樣的時間戳:String timeStamp1 = "20190612221303"//this means 12June2019 10:13:03pmString timeStamp2 = "20190512222303"//this means 12May2019 10:23:03pm所以我嘗試使用以下方法將這些時間戳字符串轉換為 java 日期:Date date1= new SimpleDateFormat("yyyymmddHHssmm").parse(timeStamp1);Date date2 = new SimpleDateFormat("yyyymmddHHssmm").parse(timeStamp2);所以很明顯,當我做一個System.out.println(date1.getTime() > date2.getTime());我希望上面的語句打印為真。但可惜它打印錯誤。Inface Date 的 .getTime() 為 date1 打印 1547310793000,為 date2 打印 1547310803000,這顯然是不正確的。有人可以指出這里發生了什么。
查看完整描述

4 回答

?
牧羊人nacy

TA貢獻1862條經驗 獲得超7個贊

在格式字符串中,您有mm兩次:yyyymmddHHssmm. 第一次出現應該是MM, for month of year.


查看完整回答
反對 回復 2023-03-09
?
翻過高山走不出你

TA貢獻1875條經驗 獲得超3個贊

發生的事情是你正在使用

m   Minute in hour

你的時間戳正在用日期解析

Sat Jan 12 22:03:13 Date1
Sat Jan 12 22:03:23 Date2

你需要使用

M   Month in year

在文檔中查看更多內容


查看完整回答
反對 回復 2023-03-09
?
達令說

TA貢獻1821條經驗 獲得超6個贊

您使用的格式:yyyymmddHHssmm 不明確。

我相信第 5 個和第 6 個字符用于定義月份。為此使用大寫的 MM。

你用的是small mm,意思是分鐘


查看完整回答
反對 回復 2023-03-09
?
蠱毒傳說

TA貢獻1895條經驗 獲得超3個贊

傳遞給 SimpleDateFormat 的字符串應該是yyyyMMddHHmmss. 看看這里哪個字母代表那個格式化程序中的哪個東西。https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html


查看完整回答
反對 回復 2023-03-09
  • 4 回答
  • 0 關注
  • 360 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號