SimpleDateFormat用于格式化和解析日期,通过模式字符串如"yyyy-MM-dd HH:mm:ss"将Date对象与字符串互转,format()方法格式化日期,parse()方法解析字符串,需处理ParseException,且该类非线程安全,建议局部使用或改用Java 8的DateTimeFormatter。

在Java中,SimpleDateFormat 是一个用于格式化和解析日期的类,它继承自 java.text.DateFormat。通过定义特定的模式字符串,你可以将 Date 对象转换为可读的字符串,也可以将日期字符串解析回 Date 对象。
使用 SimpleDateFormat 的构造函数传入一个模式字符串来创建实例,然后调用 format() 方法将 Date 对象转为字符串。
示例代码:
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateFormatExample {
public static void main(String[] args) {
Date now = new Date();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formattedDate = formatter.format(now);
System.out.println("格式化后的日期: " + formattedDate);
}
}
如果你有一个符合特定格式的日期字符串,可以使用 parse() 方法将其转换为 Date 对象。
立即学习“Java免费学习笔记(深入)”;
注意:该方法可能抛出 ParseException,需要处理异常。
示例:
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateParseExample {
public static void main(String[] args) {
String dateStr = "2024-05-20 14:30:00";
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date parsedDate = formatter.parse(dateStr);
System.out.println("解析后的日期: " + parsedDate);
} catch (ParseException e) {
System.out.println("日期格式错误: " + e.getMessage());
}
}
}
SimpleDateFormat 不是线程安全的。如果在多线程环境中使用同一个实例,可能会导致数据错误。建议:
ThreadLocal 管理每个线程的实例DateTimeFormatter(推荐)基本上就这些。掌握模式写法和基本用法,就能应对大多数日期格式化需求。虽然现在更推荐使用新的时间API,但在维护老项目时,SimpleDateFormat依然很常见。
以上就是在Java中如何使用SimpleDateFormat格式化日期的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号