SORU
4 ŞUBAT 2010, PERŞEMBE


Biçimlendirilmiş bir NSDate için ISO8601 bir zaman damgası dönüştürmek için basit bir yolu var mı?

Aşağıdaki kodu kullanırsam:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];   
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm"];
NSDate *myDate = [dateFormatter dateFromString:@"2010-01-28T15:22:23.863"];
NSLog(@"%@", [dateFormatter stringFromDate:myDate]);

Başarıyla Date bir nesneye dönüştürülür, ancak, yapamam paketler ne 5*, yani* 2010-01-28T15:22:23 Daha başka bir şekilde format gibi görünüyor

Eğer değiştirirsem [dateFormatter setDateFormat:@"yyyy-MMMM-d'T'HH:mm"]; Tarihi nesne söyleyen tarih biçimi null

Benim nihai soruya geri dönmek için, örneğin kullanmak için bir SQL veritabanı, NSDateFormatterMediumStyle ISO8601 bir zaman damgası biçimi nasıl yani "1 Ocak 2010"?

CEVAP
8 Temmuz 2010, PERŞEMBE


Benzer ama biraz daha karmaşık bir sorunum var ve çok basit bir çözüm buldum!

Sorun: Bu gibi gelen ISO8601 tarih görünüşüm: 2006-06-14T11:06:00 02:00 bir zaman dilimi sonunda uzaklık var.

Çözüm: Peter Hosey kullanınİSO8601DateFormatterhere dan indirebilirsiniz.

ISO8601DateFormatter *formatter = [[ISO8601DateFormatter alloc] init];
NSDate *theDate = [formatter dateFromString:dateString];
[formatter release], formatter = nil;

ve

ISO8601DateFormatter *formatter = [[ISO8601DateFormatter alloc] init];
NSString *dateString = [formatter stringFromDate:[twitch dateTwitched]];
[formatter release], formatter = nil;

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • hytchme

    hytchme

    9 Mart 2014
  • Madeon

    Madeon

    31 Ocak 2010
  • MikeyMacintosh

    MikeyM

    28 Aralık 2009