Swift में दिनांक और समय के साथ कार्य का परिचय
\niOS और macOS के लिए एप्लिकेशन विकसित करते समय दिनांक और समय के साथ कार्य करना एक प्रमुख कार्य है। वर्तमान दिनांक के सरल प्रदर्शन से लेकर समय अंतराल की जटिल गणना और समय क्षेत्रों के प्रबंधन तक - Swift एक शक्तिशाली और लचीला टूलकिट प्रदान करता है। इस लेख में, हम मुख्य क्लासेस और स्ट्रक्चर्स को समझेंगे: Date, DateFormatter, Calendar, DateComponents और TimeInterval। आप व्यवहार में दिनांक बनाना, फ़ॉर्मेट करना, तुलना करना और उनमें हेरफेर करना सीखेंगे।
मुख्य क्लासेस और स्ट्रक्चर्स
\nSwift में दिनांक के साथ कार्य करने के लिए कई मौलिक प्रकारों का उपयोग किया जाता है। आइए उनमें से प्रत्येक पर विचार करें।
\n- \n
- Date — एक स्ट्रक्चर जो समय में एक विशिष्ट क्षण का प्रतिनिधित्व करता है। यह कैलेंडर या समय क्षेत्र पर निर्भर नहीं करता है। \n
- DateFormatter — दिनांक को स्ट्रिंग में और वापस बदलने के लिए क्लास। \n
- Calendar — एक स्ट्रक्चर जो कैलेंडर (ग्रेगोरियन, बौद्ध आदि) का वर्णन करता है और दिनांक घटकों के साथ कार्य करने के लिए विधियाँ प्रदान करता है। \n
- DateComponents — दिनांक के अलग-अलग घटकों (वर्ष, महीना, दिन, घंटा, मिनट आदि) को संग्रहीत करने के लिए स्ट्रक्चर। \n
- TimeInterval — एक प्रकार (Double) जो सेकंड की संख्या का प्रतिनिधित्व करता है। \n
Date और DateFormatter के साथ कार्य
\nसबसे सरल से शुरू करते हैं: वर्तमान दिनांक प्राप्त करना और उसे उपयोगकर्ता को प्रदर्शित करना।
\n\nवर्तमान दिनांक प्राप्त करना
\nimport Foundation\n\nlet currentDate = Date()\nprint("वर्तमान दिनांक और समय: \\(currentDate)")\n// आउटपुट: वर्तमान दिनांक और समय: 2025-04-05 12:30:00 +0000\n\nदिनांक को फ़ॉर्मेट करना
\nदिनांक को परिचित दिखाने के लिए, हम DateFormatter का उपयोग करते हैं:
let formatter = DateFormatter()\nformatter.dateFormat = "dd.MM.yyyy HH:mm"\nlet dateString = formatter.string(from: currentDate)\nprint("फ़ॉर्मेट की गई दिनांक: \\(dateString)")\n// आउटपुट: फ़ॉर्मेट की गई दिनांक: 05.04.2025 12:30\n\nस्ट्रिंग को दिनांक में पार्स करना
\nlet dateString = "2025-04-05 14:00"\nformatter.dateFormat = "yyyy-MM-dd HH:mm"\nif let parsedDate = formatter.date(from: dateString) {\n print("पार्स की गई दिनांक: \\(parsedDate)")\n} else {\n print("पार्सिंग त्रुटि")\n}\nमहत्वपूर्ण: हमेशा जाँचें कि date(from:) nil नहीं लौटाता है, अन्यथा एप्लिकेशन क्रैश हो सकता है।
Calendar और DateComponents के माध्यम से दिनांक में हेरफेर
\nअक्सर दिन, महीने जोड़ने या दिनांकों के बीच अंतर की गणना करने की आवश्यकता होती है। यहाँ Calendar मदद करता है।
समय जोड़ना और घटाना
\nlet calendar = Calendar.current\nlet oneWeekLater = calendar.date(byAdding: .day, value: 7, to: currentDate)!\nlet oneMonthAgo = calendar.date(byAdding: .month, value: -1, to: currentDate)!\n\nprint("एक सप्ताह बाद: \\(formatter.string(from: oneWeekLater))")\nprint("एक महीना पहले: \\(formatter.string(from: oneMonthAgo))")\n\nदिनांक के घटक निकालना
\nlet components = calendar.dateComponents([.year, .month, .day, .hour], from: currentDate)\nif let year = components.year, let month = components.month {\n print("आज: \\(year)-\\(month)")\n}\n\nघटकों से दिनांक बनाना
\nvar newComponents = DateComponents()\nnewComponents.year = 2025\nnewComponents.month = 12\nnewComponents.day = 25\nnewComponents.hour = 10\nnewComponents.minute = 0\n\nif let christmas = calendar.date(from: newComponents) {\n print("क्रिसमस: \\(formatter.string(from: christmas))")\n}\n\nदिनांकों की तुलना और TimeInterval के साथ कार्य
\nSwift दिनांकों की आसानी से तुलना करने और समय अंतराल की गणना करने की अनुमति देता है।
\n\nदिनांकों की तुलना
\nlet now = Date()\nlet futureDate = calendar.date(byAdding: .day, value: 10, to: now)!\n\nif futureDate > now {\n print("