我一直在尝试将以下时间转换为毫秒,但我无法这样做。这是我的时间格式。谁能帮我?我尝试了以下代码,我只获得了"7 Jan 2016 18:03:32">的时间(以毫秒为单位)。
例如:2016 年 1 月 7 日 18:03:32 +0200
我的代码是这样的。
if(requiredOnlyDate.find()){
String dateWithTime=requiredOnlyDate.group();
SimpleDateFormat sdf = new SimpleDateFormat("dd MMM yyyy hh:mm:ss");
String dateInString =dateWithTime ;
Date date = sdf.parse(dateInString);
System.out.println(date.getTime());
}
您可以使用以下代码。在那里,它使用时间格式作为"dd MMM yyyy HH:mm:ss Z
">它工作找到。我检查了"dd MMM yyyy HH:mm:ss +SSS
">这种格式也适用于字符串到日期的转换。
String dateWithTime = "7 Jan 2016 18:03:32 +0200";
SimpleDateFormat sdf = new SimpleDateFormat("dd MMM yyyy HH:mm:ss Z");
String dateInString = dateWithTime;
Date date = sdf.parse(dateInString);
System.out.println(date.getTime());
更新
需要使用的日期格式应与要分析的日期字符串匹配。
首先,您正在解析 24 小时日期系统(18:03:02)
,因此请使用HH
代替hh
。
此外,+0200
表示时区,因此您必须在日期格式中包含Z
。
因此,您的最终日期格式将是
String dateWithTime=requiredOnlyDate.group();
SimpleDateFormat sdf = new SimpleDateFormat("dd MMM yyyy HH:mm:ss Z");
...//do whatever you want
如果有帮助,请告诉我。