java时间戳转date
时间: 2023-08-29 19:12:37 浏览: 48
在Java中可以使用`java.util.Date`和`java.sql.Timestamp`类来处理时间戳的转换。
假设你已经有了一个时间戳`long timestamp = System.currentTimeMillis();`,你可以使用以下方法将其转换为日期格式:
1. 使用`java.util.Date`类
```java
long timestamp = System.currentTimeMillis();
Date date = new Date(timestamp);
```
2. 使用`java.sql.Timestamp`类
```java
long timestamp = System.currentTimeMillis();
Timestamp timestampDate = new Timestamp(timestamp);
Date date = new Date(timestampDate.getTime());
```
在以上两种方法中,最后都会得到一个`java.util.Date`对象,你可以使用`SimpleDateFormat`类将其转换为你需要的日期格式。例如:
```java
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateString = sdf.format(date);
System.out.println(dateString);
```
输出结果为:`2021-08-17 11:25:35`
相关问题
java 时间戳如何转date
在Java中,可以使用java.util.Date类和java.text.SimpleDateFormat类,将时间戳转换为日期格式。
下面是一个简单的示例代码:
```java
long timestamp = 1579540218649L; // 时间戳
Date date = new Date(timestamp); // 根据时间戳创建日期对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 格式化日期输出
String formattedDate = sdf.format(date); // 将日期对象格式化为字符串
System.out.println(formattedDate); // 输出格式化后的日期字符串
```
此代码将其用指定的格式将时间戳转换为日期字符串输出。在这种情况下,输出为“2020-01-21 10:30:18”。
java时间戳转mysql时间戳
Java中的时间戳是指自1970年1月1日 00:00:00 GMT以来的毫秒数,而MySQL中的时间戳是指自1970年1月1日 00:00:00 UTC以来的秒数。因此,我们需要考虑到时区的差异,将Java中的时间戳转换为MySQL中的时间戳,可以使用以下代码:
```
long javaTimestamp = System.currentTimeMillis(); // 获取当前Java时间戳
long mysqlTimestamp = (javaTimestamp / 1000) + 28800; // 将Java时间戳转换为MySQL时间戳,加上8小时时区差异
```
其中,28800是8小时的秒数,也可以写成 `8 * 60 * 60`。
转换后的`mysqlTimestamp`可以直接存储到MySQL中的`TIMESTAMP`类型字段中。如果需要在Java中将MySQL中的时间戳转换为Date类型,可以使用以下代码:
```
long mysqlTimestamp = 1617253367;
Date date = new Date(mysqlTimestamp * 1000); // 将MySQL时间戳转换为Date类型
```
其中,`mysqlTimestamp`是从MySQL中查询出来的时间戳,乘以1000后再转换为Date类型。