DateTime格式化程序

时间:2016-05-11 12:22:35

标签: java datetime formatter

我正在开发一个应用程序,但我仍然坚持转换string 01/01/2037 01:00:00 AM

Date

我用过

SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy hh.mm.ss.S aa")

Date d = dateFormat.parse(dateString);

但是我收到了错误,我们将不胜感激。

2 个答案:

答案 0 :(得分:1)

您正在转换此01/01/2037 01:00:00 AM

因此使用 SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss aa") ([文档]中的更多信息)1 然后

Date date = dateFormat.parse("01/01/2037 01:00:00 AM");

请记住,你必须围绕parse方法包装try-catch。

答案 1 :(得分:0)

问题是您声明的格式与您尝试解析的字符串完全不同:

  • 您的字符串使用/来分隔您使用的格式化程序中的日,月,年 -
  • 您的字符串用小点分隔小时数,而在您使用的格式化程序中:
  • 在格式化程序中声明它们时,字符串中没有毫秒数。

以下代码应该有效:

    SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy hh.mm.ss.S aa");
    try {
        Date date = dateFormat.parse("01-01-2037 01.00.00.000 AM");
        System.out.println(date);
    } catch (ParseException e) {
        e.printStackTrace();
    }