Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak przekonwertować datę i godzinę MySQL na NSDate?

Twój ciąg formatu jest zbliżony, ale chcesz określić milisekundy za pomocą SSS też:

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

Również Z w ciągu daty oznacza „Zulu” (tj. GMT/UTC), więc Twój dateFormat powinien używać Z lub X bez cudzysłowów, aby poprawnie analizował strefę czasową ciągu. Ponadto, jeśli tworzysz ciągi znaków z dat, upewnij się, że odpowiednio ustawiłeś strefę czasową. Ty też chcesz ustawić swoją lokalizację:

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];

Zobacz Techniczne pytania i odpowiedzi QA1480 aby uzyskać więcej informacji.

Możesz także użyć nowszego NSISO8601DateFormatter , co pozwala pozbyć się niektórych z tych chwastów:

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. zawartość pliku binarnego pokazana w php print_r, ale nie zapisana w mysql

  2. Skrypt sprawdzania kondycji replikacji MySQL

  3. Jak zmienić hasło roota MySQL lub MariaDB w systemie Linux?

  4. Kiedy używać TEXT w mysql zamiast VARCHAR

  5. Sumuj do pewnego punktu - MySql