टाइम मैनेजमेंट यूटिलिटीज से लेकर वेब एप्लिकेशन तक, समय और तारीख बहुत सारे सॉफ्टवेयर के महत्वपूर्ण घटक हैं। एक प्रोग्रामर के रूप में, आपको यह जानने की जरूरत है कि आप जिस भी भाषा का उपयोग करते हैं, उसमें समय और तारीख में हेरफेर कैसे करें।
गो में, समय पैकेज समय और तारीख में हेरफेर के लिए कार्यों को बंडल करता है। आप इन कार्यों को किसी भी स्रोत फ़ाइल में उस पैकेज को आयात करके एक्सेस कर सकते हैं।
तो, समय और तारीख में हेरफेर करने का क्या मतलब है, और आप गो में समय और तारीख में हेरफेर कैसे कर सकते हैं?
समय और दिनांक हेरफेर क्या है?
आपके कार्यक्रम की आवश्यकताओं के अनुसार, इसे समय और तिथियों के व्यवहार या प्रतिनिधित्व को नियंत्रित करने, प्रबंधित करने या समायोजित करने की आवश्यकता हो सकती है।
विभिन्न प्रोग्रामिंग भाषाएं समय और तारीख में हेरफेर के लिए उनके अपने कार्य हैं। गो भाषा में व्यापक क्षमताएं हैं, जो इस उद्देश्य के लिए उपयोगी हैं।
समय और तारीख में हेरफेर में शामिल हो सकते हैं:
- किसी स्थान या समय क्षेत्र का वर्तमान समय प्राप्त करना।
- समय और तिथियों पर अंकगणितीय संचालन करना।
- समय और तिथियों के इनपुट/आउटपुट स्वरूप को बदलना।
अपने गो एप्लिकेशन में समय और तारीख में हेरफेर शुरू करने के लिए, आयात करें समय आपके द्वारा उपयोग किए जा रहे अन्य पैकेजों के साथ पैकेज।
आयात (
"एफएमटी"
"समय"
)
Go. में वर्तमान समय और दिनांक कैसे प्राप्त करें
समय में हेरफेर के लिए एक सामान्य उपयोग का मामला वर्तमान स्थानीय समय या किसी विशिष्ट समय क्षेत्र या स्थान का वर्तमान समय प्राप्त करना है।
अपने स्थानीय समय या किसी विशिष्ट समय क्षेत्र या स्थान में समय और दिनांक प्राप्त करने के लिए, आप इसका उपयोग कर सकते हैं समय। अब() तथा समय। लोडलोकेशन () कार्य:
समारोह मुख्य(){
// स्थानीय समय में वर्तमान समय और तारीख प्राप्त करें
माईटाइम: = ime. अब()
एफएमटी प्रिंट्लन("वर्तमान समय ", मेरा समय। स्थान(), " है: ", मेरा समय)// स्थानीय समय प्राप्त करने का दूसरा तरीका
स्थान, _: = समय। लोडलोकेशन("स्थानीय") // या समय। लोडलोकेशन("")
एफएमटी प्रिंट्लन("वर्तमान समय ", स्थान, " है: ", समय। अब ()। में (स्थान))// दूसरी जगह
स्थान, _ = समय। लोडलोकेशन("अमेरिका/न्यूयॉर्क")
एफएमटी प्रिंट्लन("वर्तमान समय ", स्थान, " है: ", मेरा समय। में (स्थान))
// माउंटेन टाइम ज़ोन (MST) में वर्तमान समय प्राप्त करें
स्थान, _ = समय। लोडलोकेशन("एमएसटी")
एफएमटी प्रिंट्लन("वर्तमान समय ", स्थान, " है: ", मेरा समय। में (स्थान))
}
उपरोक्त के साथ प्रोग्राम चलाना जाओ फ़ाइल नाम चलाओ टर्मिनल में निम्न आउटपुट उत्पन्न करता है:
लोडलोकेशन विधि हर स्थान और समय क्षेत्र के संक्षिप्त नाम का समर्थन नहीं करती है। के मुताबिक दस्तावेज़ जाओ, यह केवल में स्थानों का समर्थन करता है IANA.org डेटाबेस.
किसी दिए गए दिनांक से अलग घटक कैसे प्राप्त करें
आप टाइमस्टैम्प के प्रत्येक घटक को अलग से प्राप्त कर सकते हैं जो कि कब के समान है जावास्क्रिप्ट में समय और तिथियों के साथ काम करना.
Go's. का उपयोग करके इसे पूरा करने के कई तरीके हैं समय कार्य। यह खंड प्रत्येक विधि को दिखाता है।
आप का उपयोग कर सकते हैं दिनांक() दिन, महीना और वर्ष प्राप्त करने के लिए कार्य करें, और घड़ी() घंटे, मिनट और सेकंड प्राप्त करने के लिए कार्य करें। उदाहरण के लिए:
समारोहमुख्य() {
मेरा समय: = समय। अब();
साल, महीना, दिन: = myTime. दिनांक()
एफएमटी Println ("वर्ष:", वर्ष)
एफएमटी Println ("महीना:", महीना)
एफएमटी Println ("दिन:", दिन)
घंटा, मिनट, सेकंड: = myTime. घड़ी()
एफएमटी Println ("घंटा:", घंटा)
एफएमटी Println ("मिनट:", मिनट)
एफएमटी Println ("सेकंड:", सेकंड)
}
आउटपुट टाइमस्टैम्प के विभिन्न भागों को दिखाता है:
आप टाइमस्टैम्प की इकाइयाँ व्यक्तिगत रूप से भी प्राप्त कर सकते हैं समय उनमें से प्रत्येक के लिए कार्य:
समारोहमुख्य() {
मेरा समय: = समय। अब()
// प्रत्येक इकाई को वर्ष से नैनोसेकंड तक प्राप्त करें
एफएमटी Println ("वर्ष:", myTime. साल())
एफएमटी Println ("महीना:", myTime. महीना())
एफएमटी Println ("दिन:", myTime. दिन())
एफएमटी Println ("घंटा:", myTime. घंटा())
एफएमटी Println ("मिनट:", myTime. मिनट())
एफएमटी Println ("सेकंड:", myTime. दूसरा())
एफएमटी Println ("नैनोसेकंड:", myTime. नैनोसेकंड ())
}
जैसा कि आउटपुट दिखाता है, यह आपको नैनोसेकंड तक पहुंच भी देता है:
इस बिंदु तक के उदाहरणों ने वर्तमान समय से टाइमस्टैम्प इकाइयाँ प्राप्त करने पर ध्यान केंद्रित किया है। आप टाइमस्टैम्प पर उसी प्रकार की कार्रवाई कर सकते हैं जो नहीं है समय। अब().
आप किसी दी गई तिथि का वर्ष, महीना, दिन, घंटा, मिनट और दूसरा निकाल सकते हैं। ऐसा करने के लिए, आपको या तो एक नया दिनांक ऑब्जेक्ट प्रारंभ करना होगा या किसी स्ट्रिंग से दिनांक को पार्स करना होगा:
समारोहमुख्य() {
// साल से नैनोसेकंड तक के समय के अलग-अलग घटक प्राप्त करें
// एक विशिष्ट तिथि से
आपका समय: = समय। दिनांक(2020, 07, 1, 06, 32, 10, 0, समय। यु.टी. सी)
एफएमटी Println ("वर्ष:", yourTime. साल())
एफएमटी Println ("महीना:", yourTime. महीना())
एफएमटी Println ("दिन:", yourTime. दिन())
एफएमटी Println ("घंटा:", yourTime. घंटा())
एफएमटी Println ("मिनट:", yourTime. मिनट())
एफएमटी Println ("सेकंड:", yourTime. दूसरा())
एफएमटी Println ("नैनोसेकंड:", yourTime. नैनोसेकंड ())
// घंटा, मिनट और सेकंड प्राप्त करने के लिए क्लॉक () फ़ंक्शन का उपयोग करें
आपका घंटा, आपका न्यूनतम, आपका सेक: = आपका समय। घड़ी()
एफएमटी Println ("घंटा:", आपका घंटा)
एफएमटी Println ("मिनट:", आपका मिनट)
एफएमटी Println ("सेकंड:", yourSec)
// स्ट्रिंग से समय और तारीख प्राप्त करें
डेटस्ट्रिंग: = "2020-07-0106:32:10"
लेआउट: = "2006-01-0215:04:05" // आपका वांछित आउटपुट स्वरूप
आपका समय, _ = समय। पार्स (लेआउट, डेटस्ट्रिंग)
एफएमटी Println ("आपका समय है:", आपका समय)
एफएमटी Println ("वर्ष:", yourTime. साल())
एफएमटी Println ("महीना:", yourTime. महीना())
एफएमटी Println ("दिन:", yourTime. दिन())
एफएमटी Println ("घंटा:", yourTime. घंटा())
एफएमटी Println ("मिनट:", yourTime. मिनट())
एफएमटी Println ("सेकंड:", yourTime. दूसरा())
}
यह कोड निम्न आउटपुट उत्पन्न करता है:
ध्यान दें कि पार्स () का उपयोग करता है यु.टी. सी डिफ़ॉल्ट रूप से यदि आप दिनांक स्ट्रिंग में समय क्षेत्र निर्दिष्ट नहीं करते हैं।
दिनांक और समय के साथ अंकगणितीय संचालन कैसे करें
अंकगणितीय संचालन एक अन्य प्रकार का हेरफेर है जिसे आप गो में समय और तारीख पर कर सकते हैं। जोड़, घटाव और समय अंतर जैसे सरल ऑपरेशन सभी संभव हैं।
जाओ आपको परिभाषित करने की अनुमति देता है समय। अवधि समय की सभी इकाइयों के साथ मान समय। घंटा प्रति समय। नैनोसेकंड। आप इन मानों का उपयोग करके समय जोड़ या घटा सकते हैं जोड़ें(). एक भी है तिथि जोड़ें () फ़ंक्शन जो 3 मापदंडों में लेता है: जोड़ या घटाव करने के लिए वर्ष, महीने और दिन।
निम्नलिखित कोड इन कार्यों के उपयोग को दर्शाता है:
समारोहमुख्य() {
समय: = समय। अब()
क्यूरटाइम = क्यूरटाइम। समय जोड़ें। घंटा) // एक घंटा जोड़ता है
एफएमटी Println ("वर्तमान समय है:", curTime)
कल: = curTime. समय जोड़ें। घंटा * 24)
एफएमटी Println ("यह समय कल है:", कल)
नेक्स्ट वीक: = क्यूरटाइम. समय जोड़ें। घंटा * 24 * 7)
एफएमटी Println ("इस बार अगले सप्ताह है:", अगले सप्ताह)
// AddDate (y, m, d) का उपयोग करना
अगला कल: = curTime. तिथि जोड़ें(0, 0, 2)
एफएमटी Println ("इस बार अगला कल है:", अगला कल)
अगला महीना: = curTime. तिथि जोड़ें(0, 1, 0)
एफएमटी Println ("इस बार अगले महीने है:", अगले महीने)
पांच साल और एक महीने के बाद: = curTime. तिथि जोड़ें(5, 1, 0)
एफएमटी Println ("इस बार पांच साल और एक महीने बाद है:", पांच साल और एक महीने बाद)
}
जो निम्न आउटपुट उत्पन्न करता है:
आप समय घटा भी सकते हैं जोड़ें() तथा तिथि जोड़ें () नकारात्मक मापदंडों को पारित करके। उदाहरण के लिए:
समारोहमुख्य() {
समय: = समय। अब()// AddDate का उपयोग करके एक दिन घटाएं ()
कल: = curTime. तिथि जोड़ें(0, 0, -1)
एफएमटी Println ("यह समय कल था:", कल)
// जोड़ें () का उपयोग करके एक महीने घटाएं
अंतिम महीना: = curTime. समय जोड़ें। घंटा * -24 * 30)
एफएमटी Println ("इस बार पिछले महीने था:", पिछले महीने)
}
इस आउटपुट का उत्पादन करता है:
यद्यपि आप उपयोग कर सकते हैं जोड़ें() तथा तिथि जोड़ें () तिथियों के बीच अंतर खोजने के लिए, गो के पास a. है विषय() फ़ंक्शन जो थोड़ा अलग तरीके से काम करता है:
समारोहमुख्य() {
क्यूरटाइम = समय। अब()
अतीत: = समय। दिनांक(2022, समय। दिसंबर, 25, 12, 0, 0, 0, समय। यु.टी. सी)
अंतर: = अतीत। उप (करटाइम)
एफएमटी Println ("अब और अतीत के बीच का अंतर है:", diff)
// विभिन्न इकाइयों में अंतर प्राप्त करें
साल := पूर्णांक(अंतर। घंटे() / 24 / 365)
एफएमटी Println ("वर्ष:", वर्ष)
महीने := पूर्णांक(अंतर। घंटे() / 24 / 30)
एफएमटी Println ("महीने:", महीने)
दिन := पूर्णांक(अंतर। घंटे() / 24)
एफएमटी Println ("दिन:", दिन)
घंटे := पूर्णांक(अंतर। घंटे())
एफएमटी Println ("घंटे:", घंटे)
// अंतर। मिनट (), अंतर। सेकंड (), अंतर। मिलीसेकंड (), अंतर। नैनोसेकंड () भी अपनी इकाइयाँ लौटाते हैं
}
यह कोड निम्न आउटपुट उत्पन्न करता है:
विभिन्न प्रारूपों में समय और दिनांक कैसे प्राप्त करें
आप का उपयोग करके कई प्रारूपों में समय और दिनांक आउटपुट भी प्राप्त कर सकते हैं प्रारूप() समारोह। यहाँ कुछ सामान्य स्वरूपण शैलियाँ हैं:
समारोहमुख्य() {
क्यूरटाइम = समय। अब()
// अंतर्निहित मानक स्वरूपण शैलियाँ
एफएमटी Println ("वर्तमान समय है:", curTime)
एफएमटी Println ("RFC3339 प्रारूप में वर्तमान समय है:", curTime. प्रारूप (समय। RFC3339))
एफएमटी Println ("RFC3339Nano प्रारूप में वर्तमान समय है:", curTime. प्रारूप (समय। RFC3339नैनो))
एफएमटी Println ("RFC1123 प्रारूप में वर्तमान समय है:", curTime. प्रारूप (समय। RFC1123))
एफएमटी Println ("RFC1123Z प्रारूप में वर्तमान समय है:", curTime. प्रारूप (समय। RFC1123Z))
एफएमटी Println ("RFC822 प्रारूप में वर्तमान समय है:", curTime. प्रारूप (समय। RFC822))
एफएमटी Println ("RFC822Z प्रारूप में वर्तमान समय है:", curTime. प्रारूप (समय। RFC822Z))
एफएमटी Println ("RFC850 प्रारूप में वर्तमान समय है:", curTime. प्रारूप (समय। RFC850))
एफएमटी Println ("ANSIC प्रारूप में वर्तमान समय है:", curTime. प्रारूप (समय। ANSIC))
एफएमटी Println ("यूनिक्स प्रारूप में वर्तमान समय है:", curTime. प्रारूप (समय। यूनिक्स दिनांक))
// कस्टम स्वरूपण शैली
// DD-MM-YYYY HH: MM: SS
एफएमटी Println ("कस्टम प्रारूप में वर्तमान समय है:", curTime. प्रारूप("02-01-200615:04:05"))
// MM-DD-YYYY HH: MM: SS
एफएमटी Println ("कस्टम प्रारूप में वर्तमान समय है:", curTime. प्रारूप("01-02-200615:04:05"))
// YYYY-MM-DD HH: MM: SS
एफएमटी Println ("कस्टम प्रारूप में वर्तमान समय है:", curTime. प्रारूप("2006-01-0215:04:05"))
// DD.MM.YYYY
एफएमटी Println ("कस्टम प्रारूप में वर्तमान समय है:", curTime. प्रारूप("02.01.2006"))
// DD/MM/YYYY
एफएमटी Println ("कस्टम प्रारूप में वर्तमान समय है:", curTime. प्रारूप("02/01/2006"))
// 01 फरवरी 2006
एफएमटी Println ("कस्टम प्रारूप में वर्तमान समय है:", curTime. प्रारूप("02 जनवरी 2006"))
// 01 फरवरी 2006 सोमवार
एफएमटी Println ("कस्टम प्रारूप में वर्तमान समय है:", curTime. प्रारूप("02 फ़रवरी 2006 सोमवार"))
// 01 फरवरी 2006 सोम 15:04:05
एफएमटी Println ("कस्टम प्रारूप में वर्तमान समय है:", curTime. प्रारूप("02 फ़रवरी 2006 सोमवार 15:04:05"))
}
ये विभिन्न प्रकार के स्वरूपण निम्नलिखित आउटपुट उत्पन्न करते हैं:
Go. में समय और तारीख में हेरफेर
जोड़तोड़ की सूची जो आप समय और तिथियों पर कर सकते हैं, लगभग अंतहीन है। आपके आवेदन के दायरे के आधार पर, आपको कई विविध दिनांक/समय संचालन करने की आवश्यकता हो सकती है।
आपके पास किसी भी उपयोग के मामले के लिए, समय पैकेज बहुत कार्यात्मक है और इसमें कई अंतर्निहित विधियां हैं।
आप एक साधारण दैनिक योजनाकार या कार्य अनुसूचक ऐप बनाने के लिए दिनांक और समय के हेरफेर का उपयोग कर सकते हैं।