Android中的日期和时间(以毫秒计)
我正在尝试将给定的日期和时间转换为毫秒。我无法做到这一点 以下是日期和时间的格式 02-07(DD-MM) 上午08:50:00(hh mm ss a) 以下是我尝试过的:Android中的日期和时间(以毫秒计),android,datetime,Android,Datetime,我正在尝试将给定的日期和时间转换为毫秒。我无法做到这一点 以下是日期和时间的格式 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
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)
不知道我哪里出错了?有人能帮我吗
谢谢 您得到的异常与您在代码中提供的日期之间存在差异。例外情况是,提供的字符串是
2-05 08:50 AM
,但您也应该提供秒字段。应该是2-05 08:50:00 AM
是否有不匹配的地方?你在运行旧代码吗
正如其他人所指出的,如果您的月份总是两位数,您需要使用
MM
而不是M
(“d-MM hh:MM:ss a”),您忘记了一个MI尝试过。不工作您遇到了什么错误?此外,我认为您应该使用dd
而不是d
您的代码工作正常(结果毫秒=10466400000),可能还有其他错误。这是如何工作的,结果被解析为日期,然后从中提取毫秒,但这些毫秒是自某个momnet以来的毫秒。我认为年份部分缺失了,如果没有它,您如何评估日期(日期由年、月和月日构成)。