如何支持多个日期时间模式

时间:2017-03-31 01:52:16

标签: java validation spring-mvc

enter image description here

如何支持多个日期时间模式,例如yyyyMMddyyyy-MM-dd

1 个答案:

答案 0 :(得分:0)

使用SimpleDateFormat,您可以设置自己的日期模式。例如,dd/mm/yyyymm/dd/yyyyyyyy-mm-dd等等。

定义了以下模式字母(从'A'到'Z'和从'a'到'z'的所有其他字符都是保留的):

Letter   Date or Time Component   Presentation       Examples
G        Era designator             Text                AD
y        Year                       Year                1996;    96
M        Month in year               Month               July; Jul; 07
w        Week in year               Number               27
W        Week in month               Number               2
D        Day in year               Number               189
d        Day in month               Number               10
F        Day of week in month       Number               2
E        Day in week               Text               Tuesday; Tue
a        Am/pm marker               Text               PM
H        Hour in day (0-23)       Number               0
k        Hour in day (1-24)       Number               24
K        Hour in am/pm (0-11)       Number               0
h        Hour in am/pm (1-12)       Number               12
m        Minute in hour           Number               30
s        Second in minute           Number               55
S        Millisecond                Number               978
z        Time zone                   General time zone   Pacific Standard Time; PST; GMT-08:00
Z        Time zone                  RFC 822 time zone   -0800

(from Java API doc)

Source

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

public class MainClass {
  public static void main(String[] args) {
    String pattern = "MM/dd/yyyy";
    SimpleDateFormat format = new SimpleDateFormat(pattern);
    try {
      Date date = format.parse("12/31/2006");
      System.out.println(date);
    } catch (ParseException e) {
      e.printStackTrace();
    }
    // formatting
    System.out.println(format.format(new Date()));
  }
}

<强>输出

Sun Dec 31 00:00:00 PST 2006
01/26/2007