java 时间戳转换
时间: 2023-02-09 07:16:30 浏览: 88
时间戳是表示一个时间的数字,通常是表示从 1970 年 1 月 1 日(或其他某个时间)到现在的时间间隔,以毫秒为单位。
在 Java 中,你可以使用 `java.util.Date` 类来表示日期和时间,这个类有一个构造函数可以接受一个 long 类型的时间戳作为参数,然后你就可以使用这个 `Date` 对象来获取具体的年月日时分秒等信息。
例如:
```java
long timestamp = 1610347061000L;
Date date = new Date(timestamp);
// 使用 SimpleDateFormat 来格式化日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateString = sdf.format(date);
System.out.println(dateString); // 输出 "2022-11-20 13:37:41"
```
如果你想将日期转换为时间戳,也可以使用 `Date` 类的 `getTime()` 方法来获取时间戳:
```java
Date date = new Date();
long timestamp = date.getTime();
```
注意:Java 中的时间戳是以毫秒为单位的,而不是以秒为单位,所以如果你的时间戳是以秒为单位的,别忘了将它乘上 1000。
相关问题
java 时间戳转换日期
Java中时间戳可以使用`java.util.Date`和`java.time.Instant`类进行转换。
使用`java.util.Date`类:
```java
long timestamp = 1619165197L; // 时间戳
Date date = new Date(timestamp * 1000L); // 将时间戳转换为毫秒
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 格式化日期
String formattedDate = dateFormat.format(date);
System.out.println(formattedDate);
```
使用`java.time.Instant`类:
```java
long timestamp = 1619165197L; // 时间戳
Instant instant = Instant.ofEpochSecond(timestamp);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss").withZone(ZoneId.systemDefault()); // 格式化日期
String formattedDate = formatter.format(instant);
System.out.println(formattedDate);
```
注意:时间戳通常是以秒为单位,需要乘以1000转换为毫秒。
java 时间戳转换日期格式
要将 Java 中的时间戳转换为日期格式,可以使用 Java 的 Date 和 SimpleDateFormat 类。示例代码如下:
```java
long timestamp = 1622689179000L; // 时间戳,单位为毫秒
Date date = new Date(timestamp);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateString = sdf.format(date);
System.out.println(dateString); // 输出:2021-06-03 16:46:19
```
其中,Date 类表示日期和时间,SimpleDateFormat 类用于格式化日期。在 SimpleDateFormat 构造函数中传入的字符串 "yyyy-MM-dd HH:mm:ss" 表示日期格式,其中各个部分的含义如下:
- yyyy:年份,例如 2021;
- MM:月份,例如 06;
- dd:日期,例如 03;
- HH:小时,例如 16;
- mm:分钟,例如 46;
- ss:秒钟,例如 19。
通过调用 SimpleDateFormat 的 format 方法,将 Date 对象转换为字符串形式,即可得到想要的日期格式。
阅读全文