java将时间戳的字符串转为时间
时间: 2023-08-30 11:06:16 浏览: 111
可以使用Java中的SimpleDateFormat类将时间戳的字符串转换为时间。示例如下:
```java
String timestampStr = "1620100568";
long timestamp = Long.parseLong(timestampStr);
Date date = new Date(timestamp * 1000L); // 注意时间戳单位为秒,需要乘以1000转为毫秒
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formattedDate = sdf.format(date);
System.out.println(formattedDate);
```
输出结果为:2021-05-04 14:09:28
其中,SimpleDateFormat中的日期格式可以根据需要进行修改。
相关问题
java如何将字符串转为时间戳
在Java中,你可以使用`java.util.Date`类或者其更现代的替代品`java.time.LocalDateTime`来将字符串转换为时间戳。这里分别给出两个示例:
1. 使用`Date`类:
```java
import java.text.SimpleDateFormat;
import java.util.Date;
public long stringToTimestamp(String dateString) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date date = formatter.parse(dateString);
return date.getTime(); // 返回的是自1970年1月1日00:00:00 GMT以来的毫秒数
} catch (ParseException e) {
throw new IllegalArgumentException("Invalid date format", e);
}
}
```
2. 使用`LocalDateTime`类(Java 8及以上):
```java
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
public long stringToTimestamp(String dateString) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime localDateTime = LocalDateTime.parse(dateString, formatter);
return localDateTime.atZone(ZoneOffset.UTC).toInstant().toEpochMilli();
}
```
在上述代码中,你需要确保传入的日期字符串格式与你使用的日期解析模式匹配。
hutool将时间戳转为字符串
Hutool是一个在Java中常用的工具类库,它提供了许多方便的方法来处理常见的编程任务,其中包括时间日期的处理。在Hutool中,可以使用`DateUtil`类将时间戳转换为字符串。具体方法如下:
```java
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.date.TimeInterval;
// 假设timestamp是你的时间戳,格式通常为毫秒
long timestamp = System.currentTimeMillis();
// 将时间戳转换为字符串,默认格式为yyyy-MM-dd HH:mm:ss
String dateString = DateUtil.formatDateTime(new Date(timestamp));
// 如果需要自定义时间格式,可以这样做
String customDate = DateUtil.format(new Date(timestamp), "yyyy/MM/dd HH:mm:ss");
```
上面的代码示例中,`DateUtil.formatDateTime`方法将时间戳转换为默认的日期时间字符串格式。如果需要自定义日期时间格式,则可以使用`DateUtil.format`方法,并指定自己想要的格式字符串。
阅读全文