java中如何将毫秒值字符串转换为时间
时间: 2024-10-22 13:26:12 浏览: 54
在Java中,如果你有一个表示毫秒数的字符串,你可以使用`SimpleDateFormat`或`java.time`包下的API来将其转换为日期或时间。这里分别给出两种方法:
**使用`java.text.SimpleDateFormat`**
```java
import java.text.ParseException;
import java.text.SimpleDateFormat;
public class Main {
public static void main(String[] args) {
String millisecondsStr = "1589064000000"; // 毫秒数的字符串
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd'T'HH:mm:ss.SSS");
try {
long millis = Long.parseLong(millisecondsStr);
Date date = sdf.parse(sdf.format(new Date(millis)));
System.out.println(date); // 输出转换后的日期
} catch (ParseException e) {
e.printStackTrace();
}
}
}
```
**使用`java.time.LocalDateTime` (推荐方法)**
```java
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.util.concurrent.TimeUnit;
public class Main {
public static void main(String[] args) {
String millisecondsStr = "1589064000000";
long millis = Long.parseLong(millisecondsStr);
LocalDateTime localDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(millis), ZoneId.systemDefault());
System.out.println(localDateTime); // 输出转换后的本地日期时间
}
}
```
阅读全文