2009-04-23 13 views
6

मैं नहीं समझ सकता क्यों यह कुछ पंक्तियांअप्रत्याशित जावा SimpleDateFormat पार्स अपवाद

Date submissionT; 
    SimpleDateFormat tempDate = new SimpleDateFormat("EEE MMM d HH:mm:ss z yyyy"); 

    public time_print(String time) { 
     try { 
      submissionT=tempDate.parse(time); 
     } 
     catch (Exception e) {  
      System.out.println(e.toString() + ", " + time); 
     } 

    } 

कारण अपवाद और

java.text.ParseException: Unparseable date: "Tue Mar 31 06:09:00 CEST 2009", Tue Mar 31 06:09:00 CEST 2009 

प्रिंट आउट ... जबकि "unparsable" समय प्रारूप के अनुरूप है स्ट्रिंग मैं SimpleDateFormat() को पास कर चुका हूं .. कोई विचार?

+0

आपका 'समय' वास्तव में क्या है? –

+0

मैंने println() के साथ मुद्रित किया है .. समय एक स्ट्रिंग है और इसमें "मंगल मार्च 31 06:09:00 सीईएसटी 200 " – Emilio

उत्तर

19

यह एक स्थानीय मुद्दा है। उपयोग करें:

sdf = SimpleDateFormat("EEE MMM d HH:mm:ss z yyyy", Locale.US); 
+0

अच्छा होगा अगर अपवाद संदेश सिर्फ "अवांछित तारीख" न हो, बल्कि स्ट्रिंग में स्थिति जहां यह असफल रहा ... – golimar

-1

मेरे लिए काम करता है।

public class Main { 

public static void main(String[] args) 
{ 
    time_print("Tue Mar 31 06:09:00 CEST 2009"); 
} 

static Date submissionT; 
static SimpleDateFormat tempDate = new SimpleDateFormat("EEE MMM d HH:mm:ss z yyyy"); 

public static void time_print(String time) { 
    try { 
     submissionT=tempDate.parse(time); 
     System.out.println(submissionT); 
    } 
    catch (Exception e) { 
     System.out.println(e.toString() + ", " + time); 
    } 

} 

}

+5

यह केवल आपके डिफ़ॉल्ट लोकेल की अपेक्षा से मेल खाता है। – kgiannakakis

+0

पर्याप्त मेला:) .... –

-1

आपके प्रारूप में 'z' टाइमज़ोन और जावा का प्रतिनिधित्व करता है केवल कुछ टाइमज़ोन आईडी को पहचानता है। आप टाइमज़ोन क्लास से स्ट्रिंग ऐरे के रूप में सूची प्राप्त कर सकते हैं। सीईएसटी जेडीके 1.5

String[] aZones = TimeZone.getAvailableIDs(); 
    for (int i = 0; i < aZones.length; i++) { 
     String string = aZones[i]; 
     System.out.println(string); 
    } 

उम्मीद है कि यह मदद करता है सूची में दिखाई नहीं देता है।

संबंधित मुद्दे