विषयसूची
जावा तारीखवैधता और अस्तित्व की जाँच Calendar.setLenient()
जावाでतिथि की वैधता और अस्तित्व की जाँचयह एक नमूना प्रोग्राम है जो निम्नलिखित क्रिया करता है।
यह जांच करता है कि निर्दिष्ट तिथि स्ट्रिंग (yyyy/MM/dd या yyyy-MM-dd) कैलेंडर पर मौजूद है या नहीं।
जावा.टेक्स्ट.डेटफॉर्मेटकक्षासेटलेनिएंट()false निर्दिष्ट करने से सटीक तिथि पार्सिंग की अनुमति मिलती है। (*DateFormat क्लास आंतरिक रूप से यह कार्य करती है)java.util.Calendar क्लास का setLenient() मेथड(यह कॉल है...)
यह जांच विधि इस तथ्य का उपयोग करती है कि अमान्य या अस्तित्वहीन तिथि के साथ parse() विधि को कॉल करने पर ParseException उत्पन्न होगा।
नमूना कार्यक्रम
/**
* 日付の妥当性チェックを行います。
* 指定した日付文字列(yyyy/MM/dd or yyyy-MM-dd)が
* カレンダーに存在するかどうかを返します。
* @param strDate チェック対象の文字列
* @return 存在する日付の場合true
*/
public static boolean checkDate(String strDate) {
if (strDate == null || strDate.length() != 10) {
throw new IllegalArgumentException(
"引数の文字列["+ strDate +"]" +
"は不正です。");
}
strDate = strDate.replace('-', '/');
DateFormat format = DateFormat.getDateInstance();
// 日付/時刻解析を厳密に行うかどうかを設定する。
format.setLenient(false);
try {
format.parse(strDate);
return true;
} catch (Exception e) {
return false;
}
}
निष्पादन परिणाम
◆उदाहरण
public static void main(String[] args) { System.out.println(checkDate("2007-01-01")); System.out.println(checkDate("2007/02/31")); System.out.println(checkDate("aaaa/02/31")); }
◆आउटपुट परिणाम
सही गलत गलत
