[英]Java SimpleDateFormat parsing issue
我正在嘗試使用 SimpleDateFormat class 解析從 Java 中的網站出來的日期字符串,但出現了問題,我不知道為什么。
日期字符串采用以下語法:
"13:37 - Tue 28-Jun-2011"
所以我嘗試執行以下操作:
SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm - EEE dd-MMM-yyyy");
ParsePosition pos = new ParsePosition(0);
Date d = dateFormat.parse("13:37 - Tue 28-Jun-2011", pos);
正如我之前所說,這是行不通的; 當我打印
System.out.println(pos.getErrorIndex());
它打印“8”,我認為這意味着錯誤在 EEE 部分附近。 我嘗試了不同的排列,但沒有任何效果。 我究竟做錯了什么?
謝謝
邦普夫
如果您嘗試解析日期,這將起作用。 我不知道你想用ParsePosition
做什么
SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm - EEE dd-MMM-yyyy");
Date d = dateFormat.parse("13:37 - Tue 28-Jun-2011");
System.out.println(d);
這對我來說可以...
SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm - EEE dd-MMM-yyyy");
ParsePosition pos = new ParsePosition(0);
Date d = dateFormat.parse("13:37 - Tue 28-Jun-2011", pos);
System.out.println(pos.getErrorIndex());
System.out.println(d);
Output -
-1
Tue Jun 28 13:37:00 EDT 2011
我發現了問題:我不知道我必須為日期格式設置區域設置..
SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm - EEE dd-MMM-yyyy", Locale.ENGLISH);
這現在有效!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.