繁体   English   中英

SimpleDateFormat函数解析(String s)给出错误的日期

[英]SimpleDateFormat function parse(String s) gives wrong date

作为输入,我必须格式化Date对象(例如,exDate = Fri Aug 01 00:00:00 EEST 2014)。 在解析日期之后,我得到了错误的日期。

            SimpleDateFormat sdf = new SimpleDateFormat(
                    "dd-MMM-YYYY hh.mm.ss.SSSSSSSSS aa", Locale.ENGLISH);
            String dateStart = sdf.format(exDate);
            Date dateF = sdf.parse(dateStart);

dateStart将等于

01-Aug-2014 12.00.00.000000000 AM 

和resut,dateF将等于

Sun Dec 29 00:00:00 EET 2013

因此,在解析带有日期的字符串之后,结果是错误的。 也许,有人知道问题的根源吗? 或者另一种在另一个SimpleDateFormat格式化日期的方法?

问题是YYYY 意味着

 Y   Week year;

实际的一年,你正在寻找的将是yyyy

我真的建议你进入上面的链接查看完整列表

您还应该将毫秒替换为.SSS因为您无法获得更精确的数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM