无法解析的日期:“ 2018-08-02T14:24:40.040353”

时间:2018-08-07 12:34:02

标签: java date datetime parsing date-format

我试图将DateTime从C#解析为Java。这是来自Java调用"2018-08-02T14:24:40.040353"的字符串。当我尝试解析它时,出现以下错误Unparseable date: "2018-08-02T14:24:40.040353"

这是解析日期的方法

public static String dateFormater(String dateFromJSON, String 
    expectedFormat, String oldFormat) {
    SimpleDateFormat dateFormat = new SimpleDateFormat(oldFormat);
    Date date = null;
    String convertedDate = null;
    try {
        date = dateFormat.parse(dateFromJSON);
        SimpleDateFormat simpleDateFormat = new 
        SimpleDateFormat(expectedFormat);
        convertedDate = simpleDateFormat.format(date);
    } catch (Exception e) {
        e.printStackTrace();
    }

    return convertedDate;
}

1 个答案:

答案 0 :(得分:6)

您的日期看起来像一个ISO_LOCAL_DATE_TIME,如果您使用的是Java8,则可以使用java.time API并使用LocalDateTime的默认格式,如下所示:

String dateString = "2018-08-02T14:24:40.040353";
LocalDateTime ldt = LocalDateTime.parse(dateString);
  

ldt.toString():

     

2018-08-02T14:24:40.040353