我以下列格式从通知服务器收到日期字符串。 2017-09-04T07:09:30.269 + 00:00Android字符串日期“2017-09-04T07:09:30.269 + 00:00”转换为长
我想将它转换为long来保存在数据库中。
public static long convertStringDatetoLong(final String date, final String inputFormat) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(inputFormat);
try {
Date outputDate = simpleDateFormat.parse(date);
return outputDate.getTime();
} catch (ParseException e) {
e.printStackTrace();
}
return 0;
}
然后我叫convertStringDatetoLong(date, "yyyy-mm-dd'T'HH:mm:ss.SSSXXX");
但我发现,转换长是某种错误的。
结果时间是1483513770269这是错误的。 应该是有时像1504509270911这是先从15 ...(这我得到的currentTimeMillis)
2017-09-04T07:09:30.269 + 00:00,输入时间段是不一样的作为我的时区,这是GMT + 08:00
我不知道如何将其转换为设备时区,并获得正确的毫秒保存。
更新时间:
遗憾的是我在做愚蠢的事。它应该是毫米而不是毫米。
这需要的API 26.我需要支持低级别API> 16 –
那好吧,这不是令状十个地方,所以我期望使用高API水平。 – Nico