我正在尝试将给定的日期和时间转换为毫秒。我无法实现它。
以下是日期和时间的格式
02 - 07(DD - MM) 上午08:50:00(hh mm ss a)
以下是我的尝试:
String myDate = "2-05";
String myTime = "08:50:00";
String ampm = "AM";
String toParse = myDate + " " + myTime+" " + ampm;
try
{
SimpleDateFormat formatter3 = new SimpleDateFormat("d-M hh:mm:ss a"); // I assume d-M, you may refer to M-d for month-day instead.
Date date;
date = formatter3.parse(toParse);
long millis = date.getTime();
Log.e ("Date in milli",""+millis);
}
catch (ParseException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
} // You will need try/cat
以下是我得到的错误:
08-04 16:50:34.368: W/System.err(6603): java.text.ParseException: Unparseable date: "2-05 08:50 AM"
08-04 16:50:34.368: W/System.err(6603): at java.text.DateFormat.parse(DateFormat.java:626)
不确定我哪里错了?有人可以帮助我吗?
谢谢!
答案 0 :(得分:0)
您获得的例外与您在代码中提供的日期之间存在差异。例外情况说提供的字符串是2-05 08:50 AM
,但您也应该提供秒字段。应该是2-05 08:50:00 AM
某处有不匹配的地方?你在运行旧代码吗?
正如其他人所知,如果您的月份总是两位数,则需要使用MM
代替M