SimpleDateFormat
是 Java 中的一个非常重要的类,它属于 java.text
包。这个类允许你进行日期和时间的格式化和解析。使用 SimpleDateFormat
,你可以将日期和时间转换为特定格式的字符串,或者从特定格式的字符串中解析出日期和时间。
1. 创建 SimpleDateFormat 对象
要使用 SimpleDateFormat
,首先需要创建一个 SimpleDateFormat
对象。在创建对象时,你需要提供一个模式字符串,用于指定日期和时间的格式。
例如:
import java.text.SimpleDateFormat; public class Main { public static void main(String[] args) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); } }
在上面的代码中,我们创建了一个 SimpleDateFormat
对象,并指定了日期和时间的格式为 “yyyy-MM-dd HH:mm:ss”。这意味着日期和时间将按照 “年-月-日 时:分:秒” 的格式显示。
2. 格式化日期和时间
使用 SimpleDateFormat
对象的 format()
方法,你可以将日期和时间格式化为字符串。
例如:
import java.text.SimpleDateFormat; import java.util.Date; public class Main { public static void main(String[] args) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date now = new Date(); String formattedDate = sdf.format(now); System.out.println(formattedDate); } }
在上面的代码中,我们首先获取了当前日期和时间,然后使用 SimpleDateFormat
对象的 format()
方法将其格式化为字符串,并将结果打印到控制台。
3. 解析日期和时间
除了格式化日期和时间,SimpleDateFormat
还可以将字符串解析为日期和时间。你可以使用 parse()
方法来实现这个功能。
例如:
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class Main { public static void main(String[] args) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String dateString = "2023-07-06 12:34:56"; try { Date date = sdf.parse(dateString); System.out.println(date); } catch (ParseException e) { e.printStackTrace(); } } }
在上面的代码中,我们首先定义了一个日期和时间的字符串,然后使用 SimpleDateFormat
对象的 parse()
方法将其解析为日期和时间,并将结果打印到控制台。注意,parse()
方法可能会抛出 ParseException
,因此我们需要使用 try-catch 语句来处理这个异常。
4. 常用的日期和时间模式
以下是一些常用的日期和时间模式:
yyyy
:四位数的年份yy
:两位数的年份MM
:两位数的月份(01-12)dd
:两位数的日期(01-31)HH
:24小时制的小时(00-23)hh
:12小时制的小时(01-12)mm
:分钟(00-59)ss
:秒钟(00-59)S
:毫秒(000-999)E
:星期几(例如:星期一、星期二等)D
:一年中的第几天(1-366)F
:一月中的第几个星期几(例如:第一个星期一、第二个星期二等)w
:一年中的第几个星期(例如:第一个星期、第二个星期等)W
:一月中的第几个星期(例如:第一个星期、第二个星期等)a
:上午/下午标记(例如:AM、PM)k
:一天中的第几个小时(1-24)K
:一天中的第几个小时(0-11)z
:时区(例如:PST、CST等)Z
:时区的 RFC 822 表示(例如:-0800)
希望这些信息能帮助你更好地理解和使用 SimpleDateFormat
类。