Java SimpleDateFormat 不接受##/##

标签 java simpledateformat

下面是我要使用的代码。它总是命中目标,返回一个空值。月和日都是整数,并且已经过检查以确保它们在现有日期的现有日期范围内。无论如何,我正在测试月份为“05”,当天为“02”。由于某种原因,##/## 的输入不起作用吗?

public static Date getAlphabetDate()
{
    try
    {
        String tempDate = month + "/" + day;
        Date alphabetDate = new SimpleDateFormat("MMMM d").parse(tempDate);
        return alphabetDate;
    }
    catch(Exception e)
    {
        return null;
    }
}

编辑:我正在尝试格式化此输出,使其看起来像“May 02”。当我看 the documentation ,我看到页面的很大一部分专门用于格式化输出。为什么我的格式不是这样?

最佳答案

如果您输入的是02/05,您应该使用相应的日期格式:

public static Date getAlphabetDate()
{
    try
    {
        String tempDate = month + "/" + day;
        Date alphabetDate = new SimpleDateFormat("MM/dd").parse(tempDate);
        return alphabetDate;
    }
    catch(Exception e)
    {
        return null;
    }
}

关于Java SimpleDateFormat 不接受##/##,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23331128/

相关文章:

java - Java 中重写的方法可见性

java - 从 Criteria 获取 SQL

java - Simpledateformat 无法识别有效字符串

java - "keytool -import"中提到的别名是否与证书标签相同?

java - Guava 23.5 与 hbase-testing-util 1.2 冲突

java - 测试字符串中的数字字符

java - 将日期格式从 yyyy-mm-dd 更改为 yyyy/mm/dd

java - 如何使用java在int字段的左侧添加零

Java'SimpleDateFormat 错误地解析日期

java - 如何在 Java 中对字符串数组中的日期进行排序?