欢迎访问宙启技术站
智能推送

Java函数实现日期格式化

发布时间:2023-05-26 18:36:21

日期格式化是指将日期转换为特定格式的字符串。在Java中,可以使用SimpleDateFormat类来实现日期格式化。

SimpleDateFormat是一个Java类,可以将日期格式化为字符串,并将字符串解析为日期。它使用模式字符串指定日期格式,然后将模式字符串与日期对象进行匹配,以创建格式化的字符串。

以下是一个简单的例子:

import java.text.SimpleDateFormat;
import java.util.Date;

public class DateFormatExample {

   public static void main(String[] args) {

       Date date = new Date();
       SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");

       String formattedDate = formatter.format(date);

       System.out.println("Formatted Date: " + formattedDate);
   }
}

在上面的例子中,首先创建一个Date对象,然后创建一个SimpleDateFormat对象,并使用模式字符串“dd/MM/yyyy”初始化它。最后,使用format()方法将Date对象格式化为字符串,并将结果存储在formattedDate中。

模式字符串是SimpleDateFormat的核心部分。它使用不同的字母代表不同的日期和时间元素。下面是一些常用的模式字符串:

Letter	Date or Time Element	Example
G	Era designator	AD
y	Year	2019
M	Month in year	January – 01, February – 02, and so on
w	Week in year	1, 2, 3, etc.
W	Week in month	1, 2, 3, and so on
D	Day in year	1, 2, 3, and so on
d	Day in month	1, 2, 3, and so on
F	Day of week in month	1, 2, 3, and so on
E	Day in week	Monday – Mon, Tuesday – Tue, and so on
a	Am/pm marker	AM/PM
H	Hour in day (0-23)	0, 1, 2, and so on
k	Hour in day (1-24)	1, 2, 3, and so on
K	Hour in am/pm (0-11)	0, 1, 2, and so on
h	Hour in am/pm (1-12)	1, 2, 3, and so on
m	Minute in hour	0, 1, 2, and so on
s	Second in minute	0, 1, 2, and so on
S	Millisecond	0, 1, 2, and so on

例如,要使用以下格式将日期格式化为字符串:“Saturday, March 30, 2019”:

SimpleDateFormat formatter = new SimpleDateFormat("EEEE, MMMM dd, yyyy");

请注意,模式字符串中的标点符号和空格会保留在格式化后的字符串中。

还可以使用SimpleDateFormat类来解析字符串并将其转换为Date对象。例如:

String dateStr = "30/03/2019";
SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");

Date date = formatter.parse(dateStr);

在上面的例子中,首先定义一个字符串dateStr,它包含一个日期字符串。然后,创建一个SimpleDateFormat对象,并使用与格式化相同的模式字符串初始化它。最后,使用parse()方法将字符串解析为Date对象并将其存储在date中。

可以使用SimpleDateFormat类进一步定制日期格式化。例如,可以指定日期格式的语言环境(如区域设置)和时区。

在格式化日期时,在日期格式字符串中包含的单引号用于转义特殊字符。例如,要在格式化字符串中包括文本“at”,请将其包含在单引号中:

SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy 'at' HH:mm:ss");

Java中的SimpleDateFormat类提供了一种方便的方法来格式化和解析日期。通过指定格式化字符串中的日期和时间元素,可以将日期转换为特定格式的字符串,并将字符串解析为日期。要进一步定制日期格式化,可以设置区域设置和时区,并使用单引号转义包含在格式字符串中的特殊字符。