मुझे NSDateFormatter
के साथ कोई समस्या है। यह कुछ विशिष्ट तिथियों के लिए null
लौटा रहा है।NSDateFormatter विशिष्ट तिथियों के लिए शून्य लौटाता है
मैं इस समारोह मामले डिबग करने के लिए किया था:
- (void) debugTest:(NSString *)dateStr{
NSLog(@"String: %@", dateStr);
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"yyyy-MM-dd"];
NSDate *dateObj = [df dateFromString: dateStr];
NSLog(@"Date: %@", dateObj);
}
यह कुछ दिनांकों के लिए मेरी लॉग उत्पादन होता है:
String: 2012-10-18
Date: 2012-10-18 03:00:00 +0000
String: 2012-10-19
Date: 2012-10-19 03:00:00 +0000
String: 2012-10-20
Date: 2012-10-20 03:00:00 +0000
String: 2012-10-21
Date: (null)
String: 2012-10-22
Date: 2012-10-22 02:00:00 +0000
String: 2012-10-23
Date: 2012-10-23 02:00:00 +0000
क्यों यह केवल तारीख 2012-10-21
के लिए अशक्त लौट रहा है?
मैं 2011-10-01 to 2014-11-01
से अंतराल के साथ अन्य परीक्षण किया था और निम्नलिखित तारीखों null
लौटे:
2011-10-16, 2012-10-21, 2013-10-20, 2014-10-19
इस बग के कुछ प्रकार है? मैं कुछ गलत कर रहा हूँ?
मैं अपने तारीख फ़ॉर्मेटर [df setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"]];
और [df setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];
को जोड़ा गया:
संबंधित? http://stackoverflow.com/a/4265130/343955 – adarshr
मैंने दूसरे प्रश्न के समाधान की कोशिश की लेकिन मेरे लिए काम नहीं किया। मुझे लगता है कि समस्या अलग है। – Rafael
कोड ठीक काम करता है। यह सूची के बाहर कुछ है। मुझे उम्मीद है कि स्ट्रिंग गुंजाइश से बाहर हो गई है। कृपया शेष परीक्षण कोड पोस्ट करें। – madmik3