twtrtwitter twitterkit start sharedinstance pasar new kit contactos iphone twitter

iphone - twitterkit - twtrtwitter



iPhone+Twitter API: ¿Convertir tiempo? (4)

¿Existe una manera fácil de convertir la marca de tiempo que obtienes de twitter en tiempo Unix o minutos desde ahora? Podría analizar el hilo y convertir todo yo mismo, pero espero que haya una forma de convertir que no necesite eso. Aquí hay un ejemplo de un elemento created_at con una marca de tiempo.

Dom 18 de Mar 06:42:26 +0000 2007


He estado luchando con esto todo el día, pero este hilo me ayudó a encontrar una solución.

Así es como convierto el atributo "created_at" de Twitter a un NSDATE;

NSDateFormatter *fromTwitter = [[NSDateFormatter alloc] init]; // here we set the DateFormat - note the quotes around +0000 [fromTwitter setDateFormat:@"EEE MMM dd HH:mm:ss ''+0000'' yyyy"]; // We need to set the locale to english - since the day- and month-names are in english [fromTwitter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en-US"]]; NSString *dateString = [item objectForKey:@"created_at"]; NSDate *tweetedDate = [fromTwitter dateFromString:dateString];

Espero que alguien encuentre esto útil.



Presente una solicitud de función con Apple y hágales saber que desea esta funcionalidad en el iPhone. NSDateFormatter proporciona un método de inicio heredado que toma un indicador booleano que indica que desea que analice el lenguaje natural, pero solo está disponible en OS X. Wil Shipley escribió hace un tiempo una interesante publicación sobre esta funcionalidad en el contexto de factores heurísticos y humanos.

No parece probable que Apple proporcione esta funcionalidad, ya que esta nota indicaría de los documentos NSDateFormatter :

Nota de iPhone OS: iPhone OS solo admite el comportamiento 10.4+. Los métodos de estilo 10.0 y las cadenas de formato no están disponibles en el sistema operativo de iPhone.

En otras palabras, creo que tendrás que analizarlo tú mismo.


Puede usar NSDateFormatter con algo como esto:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; NSLocale *usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]; [dateFormatter setLocale:usLocale]; [usLocale release]; [dateFormatter setDateStyle:NSDateFormatterLongStyle]; [dateFormatter setFormatterBehavior:NSDateFormatterBehavior10_4]; // see http://unicode.org/reports/tr35/tr35-6.html#Date_Format_Patterns [dateFormatter setDateFormat: @"EEE MMM dd HH:mm:ss Z yyyy"]; NSDate *date = [dateFormatter dateFromString:[currentDict objectForKey:@"created_at"]]; [dateFormatter release]; NSTimeInterval seconds = [date timeIntervalSince1970];