Pergunta

Como converter o NSString 2010-08-03 04: 37: 31.0 para 3 de agosto de 2010?

É possível?

Foi útil?

Solução

Isso provavelmente é uma duplicata, mas NSDateFormatter é o que você está procurando.

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss.S"];
NSDate *date = [dateFormatter dateFromString:inDateString];

[dateFormatter setDateFormat:@"MMMM dd',' yyyy"];
NSString *outDateString = [dateFormatter stringFromDate:date];

Existem dois problemas com essa abordagem.

  1. A sequência de entrada é que não possui dados de fuso horário
  2. Culturas diferentes esperam uma ordem diferente do dia do dia do dia. Que pode ser corrigido se você usar um dos genéricos NSDateFormatterStyle formatos como NSDateFormatterLongStyle.

Outras dicas

Confira o NsdateFormatter documentação. Você provavelmente quer uma sequência de formato de @"%B %e, %Y" para a saída.

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