Java /Date(1681186795000+0000)/ 格式化
时间: 2023-12-06 12:04:25 浏览: 121
这个字符串看起来是一个 Date 对象的 toString 方法返回的字符串,其中包含了一个时间戳,即 1681186795000,表示从 1970 年 1 月 1 日 00:00:00 开始经过了 1681186795000 毫秒的时间。
如果你想要将这个时间戳转换成可读性更好的日期时间字符串,可以使用 SimpleDateFormat 类。以下是一个示例代码:
```java
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimeZone;
public class DateFormatExample {
public static void main(String[] args) {
String dateString = "/Date(1681186795000+0000)/";
long timestamp = Long.parseLong(dateString.replaceAll("\\D+",""));
Date date = new Date(timestamp);
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
formatter.setTimeZone(TimeZone.getTimeZone("UTC"));
String formattedDate = formatter.format(date);
System.out.println(formattedDate);
}
}
```
在这个示例中,我们首先使用正则表达式从字符串中提取出时间戳,并将其转换成 long 类型。然后使用 Date 对象来表示这个时间戳对应的日期和时间。接着使用 SimpleDateFormat 对象来将日期和时间格式化成指定的字符串格式 "yyyy-MM-dd HH:mm:ss"。最后打印出格式化后的日期时间字符串。
需要注意的是,上面的代码使用了 UTC 时区来格式化日期时间字符串,因为时间戳中的 "+0000" 表示的是 UTC 时区。如果你希望使用其他时区来格式化日期时间字符串,可以将 TimeZone.getTimeZone("UTC") 修改为对应的时区即可。
希望这个示例对你有帮助!
阅读全文