在Java 8中将String转换为datetime时出错

时间:2016-07-19 06:29:52

标签: datetime java-8

我正在尝试将java中的String转换为LocalDateTime对象。下面是我的代码。

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

    public class Test {

        public static void main(String[] args){

            String text = "27/11/2016 11:10 pm";
            LocalDateTime date = LocalDateTime.parse(text, DateTimeFormatter.ofPattern("dd/MM/yyyy hh:mm a"));

            System.out.println(date);
        }
    }

以下是我得到的错误。

Exception in thread "main" java.time.format.DateTimeParseException: Text '27/11/2016 11:10 pm' could not be parsed at index 17

2 个答案:

答案 0 :(得分:3)

使用String text = "27/11/2016 11:10 PM";

必须是大写字母。

答案 1 :(得分:0)

您需要am/pm的大写字母。

String text = "27/11/2016 11:10 PM";
LocalDateTime date = LocalDateTime.parse(text, DateTimeFormatter.ofPattern("dd/MM/yyyy hh:mm a"));

每天上午的文字PM

see here