2009-08-10 12 views
5

Mam Format daty: 2009-08-10T16: 03: 03ZJak konwertować XML do formatu daty Cocoa

że chcesz przekonwertować do: @ "MMM DD HH: mm A"

Pobieram format xml w NSString. Próbowałem użyć NSDateformatter: NSDateFormatter * df = [[NSDateFormatter alloc] init]; [df setDateFormat: @ "MMM dd, HH: mm a"];

jakieś pomysły?

Odpowiedz

6
NSString *yourXMLDate = @"2009-08-10T16:03:03Z" 
NSDateFormatter *inputFormatter = [[NSDateFormatter alloc] init]; 
[inputFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss"]; 
NSDate *inputDate = [inputFormatter dateFromString:yourXMLDate]; 
NSDateFormatter *outputFormatter = [[NSDateFormatter alloc] init]; 
[outputFormatter setDateFormat:@"MMM dd, HH:mm a"]; 
NSString *outputDate = [outputFormatter stringFromDate:inputDate]; 

Mam nadzieję, że to pomoże!

+0

To nie działa dla mnie: 2012-06-29 16: 58: 11,868 test z zakładkami [36214: 11903] yourXMLDate: 2012-06-29T14: 27: 45Z 2012-06-29 16: 58: 11,870 test z kartami [36214: 11903] InputDate: (null) – Setomidor

2
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; 
    [dateFormatter setDateFormat:@"E, d LLL yyyy HH:mm:ss Z"]; // Thu, 18 Jun 2010 04:48:09 -0700 
    NSDate *date = [dateFormatter dateFromString:self.currentDate]; 

    [item setObject:date forKey:@"date"]; 

    [items addObject:[item copy]]; 

tutaj edytować następujący kod

[dateFormatter setDateFormat:@"E, d LLL yyyy HH:mm:ss Z"]; // Thu, 18 Jun 2010 04:48:09 -0700 

do wymaganego formatu.