"मुझे याद आया कि मैं आपको तारीखों के साथ काम करने के बारे में कुछ बताना चाहता था।"

"आपने मुझे पहले ही बताया था कि जावा में दिनांक वर्ग है, और मैं उस वर्ग का उपयोग तिथियों के साथ काम करने के लिए कर सकता हूं।"

"हम्म। ठीक है, दिनांक वर्ग कुछ समय के लिए पुराना हो गया है।"

"अब इसके बजाय कैलेंडर क्लास का उपयोग करने की अनुशंसा की जाती है, जिसमें गेटटाइम() विधि है जो वर्तमान तिथि लौटाती है।"

"यह एक कैलेंडर ऑब्जेक्ट है जिसे आमतौर पर बनाया जाता है:"

एक कैलेंडर वस्तु बनाएँ
Calendar cal = Calendar.getInstance();

"जब आप इस पद्धति को कॉल करते हैं, तो आपके कंप्यूटर सेटिंग्स के आधार पर सही कैलेंडर बनाया जाता है।"

"'सही' कैलेंडर? क्या इसका मतलब यह है कि कई हैं?"

"हाँ। ठीक है, इसे 'प्रासंगिक' कहना अधिक सटीक होगा। तथ्य यह है कि पृथ्वी पर एक नहीं, बल्कि कई कैलेंडर हैं। उनमें से लगभग हर एक किसी न किसी धर्म या देश से जुड़ा है।"

"आप किस देश में हैं, इसके आधार पर वर्ष भिन्न हो सकता है।"

"यहां सबसे सामान्य कैलेंडर के उदाहरण दिए गए हैं।"

कैलेंडर वर्ग कैलेंडर का नाम
जॉर्जियाई कैलेंडर ईसाई ग्रेगोरियन कैलेंडर
बौद्ध कैलेंडर बौद्ध कैलेंडर
जापानी इंपीरियल कैलेंडर जापानी इंपीरियल कैलेंडर

"चीनी कैलेंडर, इस्लामी कैलेंडर और भी बहुत कुछ है।"

"अच्छा ऐसा है।"

"वर्तमान तिथि प्राप्त करने के लिए, आपको इस तरह कोड लिखना होगा:"

वर्तमान समय प्राप्त करें
Calendar cal = Calendar.getInstance();
Date date = cal.getTime();

"कैलेंडर वर्ग में कई विधियाँ हैं जो आपको किसी दिनांक और समय के बारे में कोई भी जानकारी तुरंत प्राप्त करने देती हैं।"

कोड टिप्पणियाँ
Calendar calendar = Calendar.getInstance();

int era = calendar.get(Calendar.ERA);
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DAY_OF_MONTH);

int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
int hour = calendar.get(Calendar.HOUR);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
युग 
वर्ष 
मास मास 
का दिन

सप्ताह के दिन (सोम, मंगल, बुध, ...)
घंटा 
मिनट 
सेकंड

"कभी-कभी आपको वास्तव में केवल उपलब्ध जानकारी का एक टुकड़ा प्राप्त करने की आवश्यकता होती है। उदाहरण के लिए, वर्तमान वर्ष या सप्ताह का दिन।"

"लेकिन कभी-कभी आपको सही प्रारूप में दिनांक प्रदर्शित करने की आवश्यकता होती है।"

"उदाहरण के लिए, लॉग फ़ाइल में या कहीं और।"

"या एक प्रारूप बनाएं जिसे उपयोगकर्ता अनुकूलित कर सके। फिर आप क्या करते हैं?"

"इसके लिए विशेष वर्ग भी हैं। SimpleDateFormat वर्ग आपके द्वारा वर्णित कार्य के लिए पूरी तरह उपयुक्त है:"

वांछित प्रारूप में दिनांक कैसे प्रदर्शित करें
Calendar calendar = Calendar.getInstance();

DateFormat formatter = new SimpleDateFormat("MM-DD-YY");

String message = formatter.format(calendar.getTime());

"आह। मुझे याद है। आपने पहले ही मुझे SimpleDateFormat के बारे में कुछ समझाया है , लेकिन मुझे ईमानदारी से ज्यादा याद नहीं है।"

"यह सब बहुत सरल है। आप एक SimpleDateFormat ऑब्जेक्ट बनाते हैं और इसे वह दिनांक पैटर्न पास करते हैं जिसे आप प्राप्त करना चाहते हैं। फिर आप प्रारूप विधि को कॉल करते हैं, और यह आपको वांछित रूप में उत्तीर्ण तिथि देता है।"

"दिलचस्प लगता है। मुझे और विवरण चाहिए।"

"ये रहा। विवरण। यहां कुछ अक्षर दिए गए हैं जिनका उपयोग तिथि पैटर्न में किया जा सकता है:"

पत्र विवरण
जी युग द्वारा प्रतिस्थापित (एडी या बीसी)
वाई वर्ष द्वारा प्रतिस्थापित किया गया
एम महीने से बदला गया
डब्ल्यू वर्ष में सप्ताह की संख्या
डब्ल्यू महीने में सप्ताह की संख्या
डी वर्ष में दिनों की संख्या
डी महीने का दिन
एफ महीने में सप्ताह का दिन
सप्ताह का दिन
AM/PM (दोपहर से पहले या बाद में)
एच 24-घंटे के प्रारूप में घंटा (0-23)
24 घंटे के प्रारूप में घंटा (1-24)
12-घंटे के प्रारूप में घंटा (0-11)
एच 12-घंटे के प्रारूप में घंटा (1-12)
एम मिनट
एस सेकंड
एस मिलीसेकंड
जेड समय क्षेत्र, इस तरह स्वरूपित: प्रशांत मानक समय, पीएसटी
जेड समय क्षेत्र, इस प्रकार स्वरूपित: -0800/td>

"कूल! आपको बस इतना ही चाहिए।"

"इन पत्रों को दोहराने से जुड़ी कुछ बारीकियाँ अभी भी हैं।"

"यदि आप YY लिखते हैं, तो आपको वर्ष के अंतिम दो अंक प्राप्त होंगे। यदि आप YYYY लिखते हैं, तो आपको वर्ष के सभी चार अंक मिलते हैं।"

"महीनों के साथ कुछ जटिलता भी है। MM महीने की संख्या है। MMM महीने का तीन अक्षर का संक्षिप्त नाम है, यानी जनवरी, फरवरी, मार्च, अप्रैल, मई, आदि। MMMM का मतलब महीने का पूरा नाम है। "

"आप सप्ताह का पूरा दिन (EEEE का उपयोग करके) या केवल पहले दो अक्षर (EE का उपयोग करके) प्रदर्शित कर सकते हैं।"

"धन्यवाद, ऋषि। यह SimpleDateFormat वर्ग वास्तव में उपयोगी है। अब मुझे पता है।"

"इसका उपयोग करने का आनंद लें! और शुभकामनाएँ!"