इस सवाल का पहले से ही एक उत्तर है: < / P>
- 1 उत्तर
मेरी जावा में एक स्ट्रिंग है । मैं इसे तिथि में परिवर्तित करना चाहता हूं। मैंने SimpleDateFormat का उपयोग किया है लेकिन समस्या यह है कि अगर मैं dd-mm-yy को dd-mm-yyy के बजाय पास करता हूं, तो यह स्ट्रिंग को भी पार्स करता है और दिनांक को धर्मान्तरित करता है। नीचे कोड है
निजी स्थिर सरलडेटाफ़ॉर्मेट डेटफ़ॉर्मेट = नया सरलडेटफ़ॉर्मेट ("डीडी-एमएम-वाई वाई वाई एच एच: मिमी: एसएस"); सार्वजनिक स्थिर शून्य मुख्य (स्ट्रिंग एल्ग्स []) {दिनांक d = null; स्ट्रिंग डेटा = "14-01-16 21:59:59"; कोशिश {d = dateFormat.parse (dat); } पकड़ (ParseException ई) {e.printStackTrace (); } System.out.println (d.toString ()); }
आदर्श रूप से यह फ़ॉर्व अपवाद दिखाता है क्योंकि डेटफ़ॉर्मर में मैंने प्रारूप को dd-MM-YYYY दिया है, लेकिन स्ट्रिंग में मैंने dd पास किया है -एमएम- YY प्रारूप। तो उन स्ट्रिंगों की अनुमति देने के लिए चारों ओर एक रास्ता है, जिसकी केवल dd-MM-YYYY फ़ॉर्मेट केवल और स्ट्रिंग को अस्वीकार कर देते हैं, जिसमें dd-MM-YY प्रारूप है।
यदि आप YY को स्वीकार नहीं करना चाहते हैं, केवल YYYY, regex का उपयोग करें:
निजी स्थिर SimpleDateFormat dateFormat = नया SimpleDateFormat ("dd-MM-YYYY HH: mm: ss"); सार्वजनिक स्थिर शून्य मुख्य (स्ट्रिंग एल्ग्स []) {दिनांक d = null; स्ट्रिंग डेटा = "14-01-16 21:59:59"; कोशिश करें {if (! Dat.matches ("\\ d \\ d - \\ d \\ d - \\ d \\ d \\ d \\ d।" ")) नए ParseException (Dat, 7); डी = डेट फॉर्मेट। पीआरएस (डीएटी); } पकड़ (ParseException ई) {e.printStackTrace (); }}
Comments
Post a Comment