Swift में दिनांक और समय के साथ काम करने का परिचय
दिनांक और समय के साथ काम करना iOS और macOS के लिए ऐप डेवलपमेंट में एक मुख्य कार्य है। चाहे वर्तमान दिनांक प्रदर्शित करना हो, घटनाओं के बीच अंतर की गणना करना हो, या सूचनाओं की योजना बनाना हो — Swift इस उद्देश्य के लिए एक शक्तिशाली और लचीला टूलकिट प्रदान करता है। इस लेख में, हम मुख्य क्लासेस और विधियों को समझेंगे: Date, DateFormatter, Calendar, DateComponents और TimeInterval। आप सीखेंगे कि Swift में दिनांक कैसे बनाएं, फ़ॉर्मेट करें, तुलना करें और उनमें हेरफेर करें।
यह सामग्री शुरुआती और अनुभवी डेवलपर्स दोनों के लिए उपयोगी होगी जो अपने ज्ञान को व्यवस्थित करना चाहते हैं। सभी कोड उदाहरणों का उपयोग सीधे आपके प्रोजेक्ट्स में किया जा सकता है।
दिनांक के साथ काम करने के लिए मुख्य क्लासेस
क्लास Date
Date एक मौलिक प्रकार है जो समय के एक विशिष्ट क्षण का प्रतिनिधित्व करता है, चाहे वह समय क्षेत्र या कैलेंडर से स्वतंत्र हो। यह 1 जनवरी 2001 (Cocoa युग) के बाद से बीत चुके सेकंड की संख्या को संग्रहीत करता है।
import Foundation
// वर्तमान दिनांक और समयlet now = Date()print("अभी: \\(now)")
// 1 घंटे बाद की दिनांकlet oneHourLater = Date(timeIntervalSinceNow: 3600)print("एक घंटे बाद: \\(oneHourLater)")
// युग से दिए गए सेकंड की संख्या से दिनांकlet epochDate = Date(timeIntervalSinceReferenceDate: 0)print("Cocoa युग: \\(epochDate)")TimeInterval
TimeInterval केवल Double का एक उपनाम है, जो सेकंड की संख्या का प्रतिनिधित्व करता है। इसका उपयोग समय अंतराल निर्दिष्ट करने के लिए किया जाता है।
let interval: TimeInterval = 86400 // सेकंड में 24 घंटेlet tomorrow = Date(timeIntervalSinceNow: interval)print("कल: \\(tomorrow)")DateFormatter
DateFormatter दिनांक को स्ट्रिंग में और वापस बदलने के लिए जिम्मेदार है। यह सबसे अधिक उपयोग की जाने वाली क्लासेस में से एक है।
let formatter = DateFormatter()formatter.dateStyle = .longformatter.timeStyle = .short
let currentDate = Date()let dateString = formatter.string(from: currentDate)print("फ़ॉर्मेट की गई दिनांक: \\(dateString)")
// उलटा रूपांतरणlet dateFromString = formatter.date(from: "15 अप्रैल 2025, 14:30")print("स्ट्रिंग से दिनांक: \\(dateFromString ?? Date())")आप dateFormat का उपयोग करके अपना स्वयं का प्रारूप सेट कर सकते हैं:
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss"let customString = formatter.string(from: Date())print("कस्टम प्रारूप: \\(customString)")कैलेंडर और दिनांक घटक
Calendar
Calendar आपको किसी विशिष्ट कैलेंडर (ग्रेगोरियन, इस्लामिक, आदि) और समय क्षेत्र के संदर्भ में दिनांकों के साथ काम करने की अनुमति देता है।
let calendar = Calendar.currentlet components = calendar.dateComponents([.year, .month, .day, .hour, .minute], from: Date())print("वर्ष: \\(components.year!), महीना: \\(components.month!), दिन: \\(components.day!)")DateComponents
DateComponents एक संरचना है जिसमें दिनांक के अलग-अलग घटक (वर्ष, महीना, दिन, घंटा, आदि) होते हैं। इसका उपयोग नई दिनांक बनाने या मौजूदा दिनांकों से भाग निकालने के लिए किया जाता है।
// घटकों से दिनांक बनानाvar birthdayComponents = DateComponents()birthdayComponents.year = 1990birthdayComponents.month = 6birthdayComponents.day = 15birthdayComponents.hour = 10
if let birthday = calendar.date(from: birthdayComponents) { print("जन्मदिन: \\(birthday)")}
// दिनांक में दिन जोड़नाif let nextWeek = calendar.date(byAdding: .day, value: 7, to: Date()) { print("एक सप्ताह बाद: \\(nextWeek)")}घटकों का उपयोग दिनांक के गुणों की जांच करने के लिए किया जा सकता है:
let isToday = calendar.isDateInToday(Date())print("आज? \\(isToday)")
let isWeekend = calendar.isDateInWeekend(Date())print("सप्ताहांत? \\(isWeekend)")