datetime.parse और इसे एक विशिष्ट प्रारूप के साथ काम करना


141

मेरे पास प्रारूप में एक XML फ़ाइल से वापस आने वाला डेटाइम है:

20080916 11:02

जैसे की

ययमयम् हः सः

मैं इस पर लेने के लिए datetime.parse फ़ंक्शन कैसे प्राप्त कर सकता हूं? यानी बिना पछतावे के यह पार्स? चियर्स

जवाबों:


246
DateTime.ParseExact(input,"yyyyMMdd HH:mm",null);

आपके कहने का मतलब यह था कि मिनटों ने घंटों का पालन किया, सेकंडों का नहीं - आपका उदाहरण थोड़ा भ्रमित करने वाला है।

ParseExact प्रलेखन अन्य भार के विवरण, मामले में आप पार्स स्वचालित रूप से यूनिवर्सल समय या ऐसा ही कुछ करने के लिए कनवर्ट करना चाहते हैं।

@ जोएल कोएहॉर्न के रूप में उल्लेख किया गया है, वहाँ भी TryParseExact का उपयोग करने का विकल्प है , जो ऑपरेशन की सफलता या विफलता का संकेत देते हुए बूलियन मान लौटाएगा - मैं अभी भी .Net 1.1 पर हूं, इसलिए मैं अक्सर इसे भूल जाता हूं।

यदि आपको अन्य प्रारूपों को पार्स करने की आवश्यकता है, तो आप मानक दिनांक समय प्रारूप प्रारूप की जांच कर सकते हैं ।


11
DateTime.TryParseExact ()
जोएल कोएहॉर्न

इसके अलावा: मानक Xml का अपना विशिष्ट दिनांक समय प्रारूप है, और .Net Xml उपकरण इसे पढ़ने में सक्षम होना चाहिए।
जोएल कोएहॉर्न

इस स्थिति में यह अंतिम पैरामीटर के साथ शून्य के रूप में ठीक काम करता है, लेकिन किसी के लिए भी जो इस CultureInfo.InvariantCulture को ढूँढता है अन्यथा आपको समस्याएँ मिल सकती हैं यदि आपका डेटाटाइम "1823/01/01" जैसा कुछ है।
टोडिलो

@JoelCoehoorn standard XML specific DateTime format?
किकेनेट

10

टिप के लिए धन्यवाद, मैंने अपनी तिथि "20071122" प्राप्त करने के लिए इसका उपयोग किया, मुझे डेटामेस्टीस्टाइल जोड़ने की आवश्यकता थी, मैंने किसी का उपयोग नहीं किया और यह काम किया:

DateTime dt = DateTime.MinValue;

DateTime.TryParseExact("20071122", "yyyyMMdd", null,System.Globalization.DateTimeStyles.None, out dt);
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.