C# में तिथियों और समय के साथ काम करने में अक्सर स्ट्रिंग्स को DateTime
ऑब्जेक्ट्स में बदलना शामिल होता है। यह लेख इस रूपांतरण के कई तरीकों का पता लगाता है, स्पष्टता और मजबूत त्रुटि हैंडलिंग पर जोर देता है।
विषय-सूची
Convert.ToDateTime()
का उपयोग करनाDateTime.Parse()
का उपयोग करनाDateTime.ParseExact()
का उपयोग करना- उत्कृष्ट अभ्यास और त्रुटि हैंडलिंग
- निष्कर्ष
Convert.ToDateTime()
का उपयोग करना
Convert.ToDateTime()
एक सीधा तरीका प्रदान करता है। हालाँकि, यह सिस्टम की वर्तमान संस्कृति पर निर्भर करता है, अगर स्ट्रिंग प्रारूप मेल नहीं खाता है तो संभावित रूप से त्रुटियों का कारण बन सकता है।
using System;
using System.Globalization;
public class DateTimeConverter
{
public static void Main(string[] args)
{
string dateString = "10/26/2024";
try
{
DateTime dateTime = Convert.ToDateTime(dateString);
Console.WriteLine($"रूपांतरित DateTime: {dateTime}");
}
catch (FormatException)
{
Console.WriteLine("अमान्य तिथि प्रारूप।");
}
catch (OverflowException)
{
Console.WriteLine("तिथि मान सीमा से बाहर।");
}
}
}
DateTime.Parse()
का उपयोग करना
Convert.ToDateTime()
के समान, DateTime.Parse()
वर्तमान संस्कृति का उपयोग करता है। यह प्रारूप विसंगतियों के प्रति समान रूप से संवेदनशील है।
using System;
using System.Globalization;
public class DateTimeConverter
{
public static void Main(string[] args)
{
string dateString = "October 26, 2024";
try
{
DateTime dateTime = DateTime.Parse(dateString);
Console.WriteLine($"रूपांतरित DateTime: {dateTime}");
}
catch (FormatException)
{
Console.WriteLine("अमान्य तिथि प्रारूप।");
}
catch (OverflowException)
{
Console.WriteLine("तिथि मान सीमा से बाहर।");
}
}
}
DateTime.ParseExact()
का उपयोग करना
सटीक नियंत्रण के लिए, DateTime.ParseExact()
आपको इनपुट स्ट्रिंग के प्रारूप को निर्दिष्ट करने देता है। यह अस्पष्टता और संस्कृति से संबंधित समस्याओं को समाप्त करता है।
using System;
using System.Globalization;
public class DateTimeConverter
{
public static void Main(string[] args)
{
string dateString = "2024-10-26";
string format = "yyyy-MM-dd";
try
{
DateTime dateTime = DateTime.ParseExact(dateString, format, CultureInfo.InvariantCulture);
Console.WriteLine($"रूपांतरित DateTime: {dateTime}");
}
catch (FormatException)
{
Console.WriteLine("अमान्य तिथि प्रारूप।");
}
catch (OverflowException)
{
Console.WriteLine("तिथि मान सीमा से बाहर।");
}
}
}
उत्कृष्ट अभ्यास और त्रुटि हैंडलिंग
हमेशा इसकी विश्वसनीयता के लिए DateTime.ParseExact()
को प्राथमिकता दें। CultureInfo.InvariantCulture
का उपयोग करने से विभिन्न प्रणालियों में सुसंगत पार्सिंग सुनिश्चित होती है। अप्रत्याशित अनुप्रयोग क्रैश को रोकने के लिए व्यापक त्रुटि हैंडलिंग (try-catch
ब्लॉक) महत्वपूर्ण है।
निष्कर्ष
सही विधि का चुनाव आपकी आवश्यकताओं पर निर्भर करता है। सरल मामलों के लिए और जब आप इनपुट प्रारूप पर भरोसा करते हैं, तो Convert.ToDateTime()
या DateTime.Parse()
पर्याप्त हो सकता है। हालाँकि, मजबूत, विश्वसनीय रूपांतरणों के लिए, विशेष रूप से विविध इनपुट प्रारूपों या विविध सांस्कृतिक सेटिंग्स से निपटने के दौरान, उचित त्रुटि हैंडलिंग के साथ DateTime.ParseExact()
की दृढ़ता से अनुशंसा की जाती है।