首页 > Java > java教程 > 正文

在Java中如何格式化时间戳输出

P粉602998670
发布: 2025-10-23 21:03:01
原创
485人浏览过
Java中格式化时间戳推荐使用DateTimeFormatter(Java 8+),线程安全且简洁;旧版本可用SimpleDateFormat,但非线程安全。

在java中如何格式化时间戳输出

在Java中格式化时间戳输出,通常使用 SimpleDateFormatDateTimeFormatter(Java 8+)来将时间戳(long 类型的毫秒值)转换为可读的日期时间字符串。

1. 使用 SimpleDateFormat(适用于 Java 7 及更早版本)

SimpleDateFormat 是 java.text 包下的类,用于格式化和解析日期。可以将时间戳转为指定格式的字符串。

import java.text.SimpleDateFormat;
import java.util.Date;
<p>public class TimestampFormat {
public static void main(String[] args) {
long timestamp = System.currentTimeMillis(); // 示例时间戳
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formattedTime = sdf.format(new Date(timestamp));
System.out.println(formattedTime);
}
}</p>
登录后复制

说明:
"yyyy-MM-dd HH:mm:ss" 是常见的格式,你也可以根据需要调整,例如:
- "dd/MM/yyyy" → 05/12/2024
- "yyyy年MM月dd日 HH时mm分ss秒" → 2024年12月05日 14时30分25秒

2. 使用 DateTimeFormatter(推荐,Java 8+)

Java 8 引入了新的时间 API(java.time 包),更安全、线程友好。推荐使用 InstantLocalDateTimeZonedDateTime 配合 DateTimeFormatter

import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
<p>public class ModernTimestampFormat {
public static void main(String[] args) {
long timestamp = System.currentTimeMillis();
Instant instant = Instant.ofEpochMilli(timestamp);
LocalDateTime dateTime = LocalDateTime.ofInstant(instant, ZoneId.systemDefault());</p><pre class='brush:java;toolbar:false;'>    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
    String formattedTime = dateTime.format(formatter);

    System.out.println(formattedTime);
}
登录后复制

}

立即学习Java免费学习笔记(深入)”;

比格设计
比格设计

比格设计是135编辑器旗下一款一站式、多场景、智能化的在线图片编辑器

比格设计124
查看详情 比格设计

优点:
- DateTimeFormatter 是不可变对象,线程安全
- 新的时间 API 更清晰、不易出错

3. 常见格式符号说明

无论使用哪种格式器,模式字符串含义一致:

  • yyyy — 年份(如 2024)
  • MM — 月份(01-12)
  • dd — 日期(01-31)
  • HH — 小时(24小时制,00-23)
  • mm — 分钟(00-59)
  • ss — 秒数(00-59)
  • SSS — 毫秒(000-999)

4. 注意事项

使用 SimpleDateFormat 时要注意:
- 它不是线程安全的,多线程环境下建议使用 ThreadLocal 或改用 DateTimeFormatter
- 时间戳单位是毫秒,确保传入的是毫秒值(System.currentTimeMillis())

基本上就这些。如果你使用的是 Java 8 或更高版本,优先选择 DateTimeFormatter,代码更简洁也更安全。

以上就是在Java中如何格式化时间戳输出的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号