frdt = req.getParameter("[FRDT]");


        if(isValidDate(frdt)){
            frdt = req.getParameter("[FRDT]");
        }else{
            frdt = formatDt(frdt);
        }

    private static boolean isValidDate(String input) {
    String formatString = "YYYY-MM-dd";

    try {
        SimpleDateFormat format = new SimpleDateFormat(formatString);
       format.setLenient(true);
        format.parse(input);
    } catch (ParseException e) {
        return false;
    } catch (IllegalArgumentException e) {
        return false;
    }

    return true;
}


我对frdt的输入(输入日期)将为2017-03-27 11:33:21或仅2017-03-27。
但是我有两个条件,如果没有时间只有'2017-03-27',它只会运行

frdt = req.getParameter("[FRDT]");


如果日期中包含日期和时间,则会在时间之前添加“ T”。

如何验证输入是否包含时间?

请您指教。

谢谢和最好的问候
沙龙

最佳答案

您可以检查String是否包含':'字符,否则可以按空格将String分割,并且如果length大于1,则表明您可能有时间输入。

关于java - 如何检查时间是否存在?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43041993/

10-11 05:12