当前位置: 代码迷 >> java >> Java日期格式yyyy-mm-dd.hh.MM.ss.ms
  详细解决方案

Java日期格式yyyy-mm-dd.hh.MM.ss.ms

热度:89   发布时间:2023-07-25 19:26:01.0

我收到的日期像这样的字符串: 2015-07-22.06.05.56.344 我写了这样的解析代码

 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd.hh.MM.ss.ms");
    try {
        Date date = sdf.parse("2015-07-22.06.05.56.344");
        System.out.println(date);
    } catch (ParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

我得到这样的输出:

Fri May 22 06:03:44 IST 2015

为什么它读错了? 我的代码有问题还是Java无法识别此日期格式?

您需要使用MM数月,使用mm数分钟。

尝试将SimpleDateFormat设置为此:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd.hh.mm.ss.SSS");

检查javadoc以获取更多信息:

您的模式错误。 该模式区分大小写。

mm代表分钟MM代表月。

SS是毫秒

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd.hh.mm.ss.SSS");

有关更多详细信息,请参见

  • 您的MM / mm表示错误的方式, mm表示“分钟”, MM表示“月份”
  • SS代表“毫秒”(或ms ,表示无意义)
  • 我还建议您使用HH代替hh因为HH是“一天中的小时(0-23)”

因此,使用...

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd.HH.mm.ss.SS");

它为我输出Wed Jul 22 06:05:56 EST 2015

  相关解决方案