输入日期有两种不同的格式。如何解析它

时间:2012-07-29 11:17:27

标签: java struts-1

  

可能重复:
  How to parse dates in multiple formats using SimpleDateFormat

我用a来获取输入日期。日期字符串可以采用两种不同的格式--MM / dd / yyy和dd.MM.yyyy。提交后我需要将此字符串解析为sql.Date并将其设置为ActionForm中嵌套对象的属性。以不同格式解析此字符串的最佳方法是什么?它应该在何处发生?

1 个答案:

答案 0 :(得分:1)

首先检查字符串是否包含“。”或“/”然后应用适当的DateFormat

static Date parseDate(String in) throws ParseException {
  return new SimpleDateFormat(in.contains(".")? "dd.MM.yyyy" : "MM/dd/yyyy")
    .parse(in);
}
public static void main(String[] args) throws Exception {
  System.out.println(parseDate("31.01.2001"));
  System.out.println(parseDate("01/31/2001"));
}