Pergunta

Estou tentando obter nsdate da string, mas está retornando. Eu tentei o seguinte:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-mm-dd'T'HH:mm:ss'Z'"];
NSDate *date = [dateFormatter dateFromString:@"2010-05-07T10:12:32UTC"];
NSLog(@"Success date=%@",[date description]);

Obrigado

Foi útil?

Solução

Sua string de formato de data espera que a data termine com um literal Z. Mas sua data termina com a string UTC. Existem várias maneiras de consertar isso.

  1. Altere sua string de formato de data para @"yyyy-mm-dd'T'HH:mm:ss'UTC'".
  2. Ou mude sua string de data para @"2010-05-07T10:12:32Z".

Ou você pode alterar sua string de formato de data para: @"yyyy-mm-dd'T'HH:mm:ssz". Isso reconhecerá alguns nomes comuns de fuso horário de 3 letras, como o PDT para o horário do dia do Pacífico. Infelizmente, no entanto, ele não reconhecerá o UTC como um nome de zona horária (você teria que usar "GMT").

Outras dicas

O literal 'Z' não combina com a string UTC.

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