将字符串转换为时间显示未处理的异常

时间:2015-04-20 08:21:39

标签: java android android-studio

我想转换以下String:" 1:13 PM"时间格式。 我收到以下错误:Unhandled exception:java.text.ParseException

这是我的代码:

String str = "1:13 PM";
DateFormat formatter = new SimpleDateFormat("hh:mm:ss a");
DateFormat date = formatter.parse(str);

2 个答案:

答案 0 :(得分:7)

删除ss,它指示第二个,你没有在字符串中给第二个,所以当解析器查找第二个值时,它找不到第二个给你异常。

DateFormat formatter = new SimpleDateFormat("hh:mm a");

并将下一行更改为

try {
        Date date = formatter.parse(str);
    } catch (ParseException e) {
        e.printStackTrace();
    }

答案 1 :(得分:0)

答案与@Saif相同,但formatter.parse(str)不会将其转换为DateFormat对象,而是将它转换为Date对象。

        String str = "1:13 PM";
        DateFormat formatter = new SimpleDateFormat("hh:mm a");
        try{
            Date date = formatter.parse(str);
        }catch(ParseException e){
        e.printStackTrace();
    }