Java SimpleDateFormat 在 Date 对象中返回错误值

标签 java date date-format simpledateformat

我试图解析一个字符串来获取一个 Date 对象,但它总是返回 Sun。日期为2012年12月30日。有人对我做错了什么有任何想法吗?

我使用相同的代码,使用 YYYY-MM-dd 格式的字符串,它工作得很好,所以我不确定为什么切换到这种格式会导致问题。

 public static Date getDateObjFromStr(String dateStr)
{
    DateFormat formatter = new SimpleDateFormat("MM/dd/YYYY");
    Date dateObj;
    try {
        dateObj = formatter.parse(dateStr);
        return dateObj;
    } catch(Exception e) {
        return null;
    }
}

The string representing the date

The Date object returned by the SimpleDateFormat object

最佳答案

区分大小写

大写Y代表week-based year

尝试使用小写的 y 代替

DateFormat formatter = new SimpleDateFormat("MM/dd/yyyy");

关于Java SimpleDateFormat 在 Date 对象中返回错误值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19849087/

相关文章:

ruby-on-rails - 获得最接近给定日期的发薪日的有效方法

date-format - logrotate dateformat 似乎不支持 %H :%M:%S

java - 将文件中的值设置为组合框

JavaFx - 将两个 'setOnAction' 设置为同一个按钮

java - Android - 单击小部件时启动配置 Activity - 不起作用

algorithm - 模糊日期算法

java - 如何使用 Scanner 将元素添加到 ArrayList 中

r - 用日期对象拟合曲线

iOS - 友好的 NSDate 格式

javascript - Extjs 4.2.1 XTemplate 子元素的日期格式仅在 IE 上显示 NaN