Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да конвертирам MySQL datetime в NSDate?

Вашият форматен низ е близо, но искате да посочите милисекундите с SSS , също:

[df setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSX"];

Също така, Z във вашия низ за дата означава "Zulu" (т.е. GMT/UTC), така че вашият dateFormat трябва да използва Z или X без кавички, така че да анализира правилно часовата зона на низа. Освен това, ако създавате низове от дати, не забравяйте да зададете съответно часовата си зона. Вие също искате да зададете своя локал:

NSLocale *enUSPOSIXLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.locale = enUSPOSIXLocale;
formatter.dateFormat = @"yyyy-MM-dd'T'HH:mm:ss.SSSX";
formatter.timeZone = [NSTimeZone timeZoneForSecondsFromGMT:0];

Вижте Технически въпроси и отговори QA1480 за повече информация.

Можете също да използвате по-новия NSISO8601DateFormatter , което ви извежда от някои от тези плевели:

NSISO8601DateFormatter *formatter = [[NSISO8601DateFormatter alloc] init];
formatter.formatOptions = NSISO8601DateFormatWithFullDate | NSISO8601DateFormatWithFullTime | NSISO8601DateFormatWithFractionalSeconds;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. изпращане на данни към MySQL с AJAX + jQuery + PHP

  2. групирайте по първо и последно появяване

  3. Единични кавички, двойни кавички и обратни кавички в MySQL

  4. Изберете най-често срещаната стойност от поле в MySQL

  5. Как да сравним две таблици в MySQL