java格林尼治时间转换为时间戳
时间: 2023-11-06 16:08:21 浏览: 134
Java中可以通过将格林尼治时间转换为本机时区的时间,再将本机时区的时间转换为时间戳来实现格林尼治时间转换为时间戳的功能。具体实现方法如下:
1. 首先,将格林尼治时间转换为本机时区的时间,可以使用如下代码:
```
public static String iso8601ToCustomerDate(String iso8601Str, String format) {
DateTimeFormatter dateTimeFormatter = ISODateTimeFormat.dateTime();
DateTime dateTime = dateTimeFormatter.parseDateTime(iso8601Str);
DateTimeFormatter dateTimeFormatter1 = DateTimeFormat.forPattern(format);
return dateTimeFormatter1.print(dateTime);
}
```
其中,iso8601Str为格林尼治时间字符串,format为需要转换的时间格式,例如"yyyy年M月d日 HH:mm:ss"。
2. 然后,将本机时区的时间转换为时间戳,可以使用如下代码:
```
public static long iso8601FormateTimeToLong(String time){
String formateTime = iso8601ToCustomerDate(time,"yyyy年M月d日 HH:mm:ss");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年M月d日 HH:mm:ss");
Date date = null;
try {
date = sdf.parse(formateTime);
} catch (ParseException e) {
MXLog.e(MXLog.APP_WARN, e);
}
return date.getTime();
}
```
其中,time为本机时区的时间字符串,需要先将其转换为指定格式的时间字符串,再将其转换为时间戳。
阅读全文