本文概述
在Java中, 有两种用于格式化日期的类:DateFormat和SimpleDateFormat。
java.text.DateFormat类提供了各种方法, 以独立于语言的方式格式化和解析java中的日期和时间。 DateFormat类是一个抽象类。 java.text.Format是父类, 而java.text.SimpleDateFormat是java.text.DateFormat类的子类。
在Java中, 将日期转换为字符串称为格式化, 反之亦然。换句话说, 格式化是指字符串日期, 而解析是指字符串日期。
java.text.DateFormat字段
protected Calendar calendar
protected NumberFormat numberFormat
public static final int ERA_FIELD
public static final int YEAR_FIELD
public static final int MONTH_FIELD
public static final int DATE_FIELD
public static final int HOUR_OF_DAY1_FIELD
public static final int HOUR_OF_DAY0_FIELD
public static final int MINUTE_FIELD
public static final int SECOND_FIELD
public static final int MILLISECOND_FIELD
public static final int DAY_OF_WEEK_FIELD
public static final int DAY_OF_YEAR_FIELD
public static final int DAY_OF_WEEK_IN_MONTH_FIELD
public static final int WEEK_OF_YEAR_FIELD
public static final int WEEK_OF_MONTH_FIELD
public static final int AM_PM_FIELD
public static final int HOUR1_FIELD
public static final int HOUR0_FIELD
public static final int TIMEZONE_FIELD
public static final int FULL
public static final int LONG
public static final int MEDIUM
public static final int SHORT
public static final int DEFAULT
java.text.DateFormat方法
没有。 | 公开方法 | 描述 |
---|---|---|
1) | final String format(Date date) | 将给定的Date对象转换为字符串。 |
2) | Date parse(String source)throws ParseException | 将字符串转换为Date对象。 |
3) | static final DateFormat getTimeInstance() | 返回具有默认语言环境默认格式样式的时间格式器。 |
4) | static final DateFormat getTimeInstance(int style) | 返回具有默认语言环境的给定格式样式的时间格式化程序。 |
5) | static final DateFormat getTimeInstance(int style, Locale locale) | 返回具有给定语言环境的给定格式样式的时间格式化程序。 |
6) | static final DateFormat getDateInstance() | 返回具有默认语言环境默认格式样式的日期格式程序。 |
7) | static final DateFormat getDateInstance(int style) | 返回具有默认语言环境的给定格式样式的日期格式程序。 |
8) | static final DateFormat getDateInstance(int style, Locale locale) | 返回具有给定语言环境的给定格式样式的日期格式化程序。 |
9) | static final DateFormat getDateTimeInstance() | 返回带有默认语言环境的默认格式样式的日期/时间格式化程序。 |
10) | static final DateFormat getDateTimeInstance(int dateStyle, int timeStyle) | 返回具有给定日期格式样式和默认语言环境时间格式样式的日期/时间格式化程序。 |
11) | static final DateFormat getDateTimeInstance(int dateStyle, int timeStyle, Locale locale) | 返回具有给定语言环境的给定日期格式和时间格式化风格的日期/时间格式化程序。 |
12) | static final DateFormat getInstance() | 返回具有日期和时间的短格式样式的日期/时间格式化程序。 |
13) | static Locale[] getAvailableLocales() | 返回可用语言环境的数组。 |
14) | Calendar getCalendar() | 返回此DateFormat实例的Calendar实例。 |
15) | NumberFormat getNumberFormat() | 返回此DateFormat实例的NumberFormat实例。 |
16) | TimeZone getTimeZone() | 返回此DateFormat实例的TimeZone实例。 |
Java DateFormat示例:日期为字符串
让我们看一下使用java.text.DateFormat类在Java中格式化日期和时间的简单示例。
import java.text.DateFormat;
import java.util.Date;
public class DateFormatExample {
public static void main(String[] args) {
Date currentDate = new Date();
System.out.println("Current Date: "+currentDate);
String dateToStr = DateFormat.getInstance().format(currentDate);
System.out.println("Date Format using getInstance(): "+dateToStr);
}
}
输出:
Current Date: Tue Mar 31 14:37:23 IST 2015
Date Format using getInstance(): 31/3/15 2:37 PM
让我们看看使用java.text.DateFormat类在Java中格式化日期和时间的完整示例。
import java.text.DateFormat;
import java.util.Date;
public class DateFormatExample2 {
public static void main(String[] args) {
Date currentDate = new Date();
System.out.println("Current Date: "+currentDate);
String dateToStr = DateFormat.getInstance().format(currentDate);
System.out.println("Date Format using getInstance(): "+dateToStr);
dateToStr = DateFormat.getDateInstance().format(currentDate);
System.out.println("Date Format using getDateInstance(): "+dateToStr);
dateToStr = DateFormat.getTimeInstance().format(currentDate);
System.out.println("Date Format using getTimeInstance(): "+dateToStr);
dateToStr = DateFormat.getDateTimeInstance().format(currentDate);
System.out.println("Date Format using getDateTimeInstance(): "+dateToStr);
dateToStr = DateFormat.getTimeInstance(DateFormat.SHORT).format(currentDate);
System.out.println("Date Format using getTimeInstance(DateFormat.SHORT): "+dateToStr);
dateToStr = DateFormat.getTimeInstance(DateFormat.MEDIUM).format(currentDate);
System.out.println("Date Format using getTimeInstance(DateFormat.MEDIUM): "+dateToStr);
dateToStr = DateFormat.getTimeInstance(DateFormat.LONG).format(currentDate);
System.out.println("Date Format using getTimeInstance(DateFormat.LONG): "+dateToStr);
dateToStr = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.SHORT).format(currentDate);
System.out.println("Date Format using getDateTimeInstance(DateFormat.LONG, DateFormat.SHORT): "+dateToStr);
}
}
输出:
Current Date: Tue Mar 31 14:37:23 IST 2015
Date Format using getInstance(): 31/3/15 2:37 PM
Date Format using getDateInstance(): 31 Mar, 2015
Date Format using getTimeInstance(): 2:37:23 PM
Date Format using getDateTimeInstance(): 31 Mar, 2015 2:37:23 PM
Date Format using getTimeInstance(DateFormat.SHORT): 2:37 PM
Date Format using getTimeInstance(DateFormat.MEDIUM): 2:37:23 PM
Date Format using getTimeInstance(DateFormat.LONG): 2:37:23 PM IST
Date Format using getDateTimeInstance(DateFormat.LONG, DateFormat.SHORT): 31 March, 2015 2:37 PM
Java DateFormat示例:字符串到日期
让我们看一个简单的示例, 使用java.text.DateFormat类将字符串转换为日期。
import java.text.DateFormat;
import java.util.Date;
public class DateFormatExample3 {
public static void main(String[] args)throws Exception {
Date d = DateFormat.getDateInstance().parse("31 Mar, 2015");
System.out.println("Date is: "+d);
}
}
输出:
Date is: Tue Mar 31 00:00:00 IST 2015
评论前必须登录!
注册