Java 1.3检查日期字符串格式

时间:2013-08-09 10:26:15

标签: java pattern-matching date-format

嗨其他程序员和大师程序员(我不是一个人:P)

我正在努力实现一些奇怪但必要的东西。

我有一个日期,它是我从数据库中获取的字符串。

"12-12-2013" // for example

我知道如何将java中的这个转换为日期类型或以我想要的任何方式更改格式,那里有一些示例。但我找不到的是:

我希望能够找到日期字符串使用的模式,我的意思是

"dd-MM-yyyy"
//or
"yyyy-MM-dd"

或其他。

有什么例子我不知道或没找到?

我需要这个,因为我有这个功能来改变字符串的格式:

public static String formatMydate(String datestring, String previousformat, String newformat) {

            java.util.Date date= null;
            String response = "";
            SimpleDateFormat formater;
            if (datestring.length()>=10){        
                try {                       
                    formater=new SimpleDateFormat(previousformat);
                    date = formater.parse(datestring);
                    response = new SimpleDateFormat(newformat).format(date);
                } catch (Exception e) {
                    e.printStackTrace();
                    date=null;
                }
            }

            return response.toString(); 
}

但我想知道,在使用它之前,“previousformat”可以在函数参数中输入它。

有没有办法知道日期使用的模式?

谢谢

这是一个重复的问题:

Returning a date format from an unknown format of date string in java [duplicate]

Parse any date in Java

1 个答案:

答案 0 :(得分:1)

没有简单的一般答案,因为有些地方使用dd-mm-yyyy而有些使用mm-dd-yyyy。如果您只需区分dd-mm-yyyyyyyy-mm-dd,请拆分连字符并计算数字。