java - 解决 Java DateFormat 月份解析问题

标签 java date-format

我使用 Java DateFormat 对象遇到了一些奇怪的输出。由于某种原因,它给我的月份增加了 1 个,我不知道为什么。我已经尽可能简单地分解了问题。

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 *
 * @author djc39_000
 */
public class TestDate {
    public static void main(String[] args) {
        DateFormat formatter = new SimpleDateFormat("mm/dd/yyyy hh:mm:ss a");
        Date testDate;
        try {
            testDate = (Date) formatter.parse("12/6/2013 11:23:04 AM");
            System.out.println(testDate);
        } catch (ParseException ex) {
            System.out.println(ex);
        }

    }
}

输出:

Sun Jan 06 11:23:04 EST 2013

预期输出:

Fri Dec 06 11:23:04 EST 2013

此外,如果我将字符串中的月份更改为 11,它不会更改邮票中的月份。我究竟做错了什么?谢谢

找到了解决方案,mm是分钟,我用的是月份,应该是MM。

还有其他可能容易与奖励积分混淆的角色吗?

最佳答案

日期格式应为“MM/dd/yyyy hh:mm:ss a”

关于java - 解决 Java DateFormat 月份解析问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20531763/

相关文章:

java - ViewPager : OutOfResourcesException locking surface

java - 当我在java中使用desktop.browse方法时,有什么方法可以传递http header 吗?

mysql - 使用 date_format 选择日期范围 MySQL

php - 如何将 j/M/y 日期格式更改为时间戳?

java - 使用 SimpleDateFormat 将自定义日期格式转换为另一种格式时出错

java - 是否为最终字符串调用了 String.length()?

java - 更改 JSlider 的可显示标签?

java - java中反转字符串而不改变空格

excel - 尝试将某些格式转换为日期格式

mysql - 日期格式的 Datediff