如何使用 Java 以不同格式显示日期
在本教程中,我们将使用 Java 中的 DateFormat 和 SimpleDateFormat 类 以各种格式显示日期。这些类提供多种格式选项,以不同样式显示日期,例如短、中、长和自定义格式。
使用 DateFormat 以不同格式显示日期
DateFormat 类: DateFormat 类 用于格式化和解析日期。它提供几种预定义的日期格式,例如短、中、长和全。
使用指定时间创建 Date 对象 (dt)。使用不同的格式样式(短、中、长、全)创建各种 DateFormat 实例。然后将这些格式应用于日期,并以每种格式打印结果。
步骤
1. 创建 Date 对象: 使用特定时间戳初始化 Date 对象。
Date dt = new Date(1000000000000L);
2. 创建 DateFormat 对象数组: 声明一个数组来存储不同的 DateFormat 对象。
DateFormat[] dtformat = new DateFormat[6];
3.为 DateFormat 对象分配不同的格式样式: 为 DateFormat 对象分配各种格式样式(默认、中等、完整、长、短)。
dtformat[0] = DateFormat.getInstance(); dtformat[1] = DateFormat.getDateInstance(); dtformat[2] = DateFormat.getDateInstance(DateFormat.MEDIUM); dtformat[3] = DateFormat.getDateInstance(DateFormat.FULL); dtformat[4] = DateFormat.getDateInstance(DateFormat.LONG); dtformat[5] = DateFormat.getDateInstance(DateFormat.SHORT);
示例
以下示例借助 DateFormatSymbols 类的 DateFormatSymbols().getWeekdays() 方法以缩写形式显示星期几的名称 −
import java.text.*;
import java.util.*;
public class Main {
public static void main(String[] args) {
Date dt = new Date(1000000000000L);
DateFormat[] dtformat = new DateFormat[6];
dtformat[0] = DateFormat.getInstance();
dtformat[1] = DateFormat.getDateInstance();
dtformat[2] = DateFormat.getDateInstance(DateFormat.MEDIUM);
dtformat[3] = DateFormat.getDateInstance(DateFormat.FULL);
dtformat[4] = DateFormat.getDateInstance(DateFormat.LONG);
dtformat[5] = DateFormat.getDateInstance(DateFormat.SHORT);
for(DateFormat dateform : dtformat) System.out.println(dateform.format(dt));
}
}
输出
9/9/01 7:16 AM Sep 9, 2001 Sep 9, 2001 Sunday, September 9, 2001 September 9, 2001 9/9/01
使用 SimpleDateFormat 以自定义格式显示日期
SimpleDateFormat 对象用于将当前日期 (curDate) 格式化为不同的自定义格式。format() 方法使用不同的日期模式调用,包括自定义模式,如"yyyy/MM/dd"、"dd-M-yyyy hh:mm:ss"和"dd MMMM yyyy zzzz"。格式化后,日期将以每种格式打印。
示例
以下是另一种格式的日期示例 -
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
public class SimpleDateFormatExample {
public static void main(String[] args) {
Date curDate = new Date();
SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd");
String DateToStr = format.format(curDate);
System.out.println(DateToStr);
format = new SimpleDateFormat("dd-M-yyyy hh:mm:ss");
DateToStr = format.format(curDate);
System.out.println(DateToStr);
format = new SimpleDateFormat("dd MMMM yyyy zzzz", Locale.ENGLISH);
DateToStr = format.format(curDate);
System.out.println(DateToStr);
format = new SimpleDateFormat("E, dd MMM yyyy HH:mm:ss z");
DateToStr = format.format(curDate);
System.out.println(DateToStr);
try {
Date strToDate = format.parse(DateToStr);
System.out.println(strToDate);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
输出
2024/12/09 09-12-2024 07:50:04 09 December 2024 Greenwich Mean Time Mon, 09 Dec 2024 07:50:04 GMT Mon Dec 09 07:50:04 GMT 2024
java_date_time.html

