स्ट्रिंग को डेटाटाइम में कनवर्ट नहीं किया जा सका


नमस्ते
मैं स्ट्रिंग str को DateTime,str=”2024/22/03” में कनवर्ट करना चाहता हूं
मेरे कंप्यूटर का सिस्टमफ़ॉर्मेट m/d/yyyy है
मुझे Date_1 yyyy/MM/dd प्रारूप में चाहिए
Date_1 = Convert.ToDateTime(str, “yyyy/MM/dd”);

मैंने क्या प्रयास किया है:

str = "2024/12/03"; 
Date_1 = Convert.ToDateTime(str, "yyyy/MM/dd");

समाधान 1

DateTime.ParseExact विधि (सिस्टम) | माइक्रोसॉफ्ट लर्न[^] जो तुम चाहो वही करोगे:

सी#
string str = "2024/22/03";

// Parse the string into a DateTime object with the specified format
DateTime dateTime = DateTime.ParseExact(str, "yyyy/dd/MM", null);

// Format the DateTime object into the desired format
string formattedDate = dateTime.ToString("yyyy/MM/dd");

Console.WriteLine("Original string: " + str);
Console.WriteLine("Formatted date: " + formattedDate);

और आउटपुट:

Original string: 2024/22/03
Formatted date: 2024/03/22

समाधान 2

ग्रीम ने जो कहा है उसे जोड़ने के लिए, एक बेहतर समाधान का उपयोग करना है DateTime.TryParseExact विधि (सिस्टम) | माइक्रोसॉफ्ट लर्न[^] इसके बजाय – यदि डेटा किसी कारण से आपके अपेक्षित प्रारूप में नहीं है, तो इस तरह से आप अपने ऐप के क्रैश होने के बजाय त्रुटियों का पता लगा सकते हैं:

सी#
DateTime dt;
if (!DateTime.TryParseExact(str, "yyyy/MM/dd", CultureInfo.InvariantCulture, DateTimeStyles.None, out dt))
   {
   ... report or log the problem
   return;
   }
... dt contains a valid date set at midnight here

コメント

タイトルとURLをコピーしました