Pergunta

Eu tenho um formato de data: 2009-08-10T16: 03: 03Z

Que eu quero converter para: @"mmm dd, hh: mm a"

Eu recupero o formato XML em uma NSString. Tentei usar o nsdateFormatter: nsdateFormatter *df = [[nsdateFormatter alloc] init]; [df setDateFormat:@"mmm dd, hh: mm a"];

alguma ideia?

Foi útil?

Solução

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];

Espero que isto ajude!

Outras dicas

    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]];

Aqui edite o seguinte código

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

para o seu formato necessário.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top