2017-03-21 12 views
0

日付が有効かどうかを確認する際にエラーが発生しています。エラーチェック - Java

以下のコードを試しましたが、まだエラーが発生しています。

+1

あなたは、エラーメッセージが何である – shash678

+0

「YYYY/MM/DD」の後に ')'閉じ括弧が欠落している、あなたが日付の比較の後に閉じ括弧が欠落しているようです。 – Juniar

答えて

0

このように書いていますが、正規表現をカスタマイズして正しい日付に一致させることができます。以下は2004年12月30日のような日付形式です。月と日付には2つの数字が必要です。 1つのステップをさらに進めてカスタマイズする必要があるかもしれません。そのため、入力値が31日を超えたり、月値が12を超える値をとらないようにカスタマイズする必要があります。あなたは月の値と日付値の1桁目1桁を持つことができ、正規表現はまだ入力値を渡すの下に、このいずれかで

String sales = "12/12/2004"; 
if (sales == null || !sales.matches("\\d{2}\\/{1}\\d{2}\\/{1}\\d{4}")){ 
    System.out.println("Sale is null or date format doesn't match");  
} 

!sales.matches("\\d{1,2}\\/{1}\\d{1,2}\\/{1}\\d{4}") 
0

また、必要な形式の文字列の形式で指定した日付を解析します。この機能を使用することができます。解析できる場合はtrueを返し、そうでない場合はfalseを返します。コードsales != "mm/dd/yyyy"isValidDateFormat(sales, "MM/dd/yyyy")に置き換えてください。

public static boolean isValidDateFormat(final String data, final String dateFormat){ 
     try{ 
      SimpleDateFormat formatter = new SimpleDateFormat(dateFormat); 
      formatter.format(date); 
      return true; 
     } 
     catch(final ParseException ex){ 
      return false; 
     } 
    } 
関連する問題