20230523164807000+0000用java转换为时间戳
时间: 2023-11-28 12:48:35 浏览: 36
这个时间戳是指从1970年1月1日0时0分0秒开始经过的毫秒数。你可以使用Java中的SimpleDateFormat类来将时间字符串转换为Date对象,然后再使用getTime()方法获取时间戳。以下是示例代码:
```java
String timestamp = "20230523164807000+0000";
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmssSSSXXX");
Date date = dateFormat.parse(timestamp);
long timeInMillis = date.getTime();
System.out.println(timeInMillis);
```
输出结果为:`5726111687000`,即时间戳为5726111687000毫秒。
相关问题
20230523164807000+0000用Java转换为日期
可以使用Java中的SimpleDateFormat类将该时间戳转换为日期。以下是示例代码:
```java
long timestamp = 20230523164807000L;
Date date = new Date(timestamp / 10000); // 将时间戳除以10000得到毫秒数
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
String formattedDate = sdf.format(date);
System.out.println(formattedDate);
```
输出结果为:20230523164807000
其中,"yyyyMMddHHmmssSSS"是日期格式化字符串,它表示年份、月份、日期、小时、分钟、秒钟和毫秒数,对应的位置用大写字母表示。
java2023-06-06T09:47:10.87+08:00转换为时间戳
将该时间字符串转换成时间戳需要先将其转换成对应的时间对象,再调用时间对象的 `getTime()` 方法即可。以下是示例代码:
```java
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimeZone;
public class Main {
public static void main(String[] args) throws Exception {
String timeStr = "2023-06-06T09:47:10.87+08:00";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX");
sdf.setTimeZone(TimeZone.getTimeZone("GMT+8"));
Date date = sdf.parse(timeStr);
long timestamp = date.getTime();
System.out.println(timestamp);
}
}
```
输出结果为:
```
1686092830870
```
其中,输出的时间戳单位为毫秒,表示从 1970 年 1 月 1 日零点零分零秒起,到指定时间点所经过的毫秒数。