我正在開發一款iPhone應用程序,可將圖片上傳到網絡服務器。這些圖片有時間在文件名中。由於它們可以從世界任何地方採集,所以我必須時刻關注時區和DST。我認爲我可以使用CFAbsoluteTimeGetCurrent,這不應該本地化([NSDate日期]返回本地化版本的時間,有或沒有「AM」,「PM」,「下午」或任何其他變體...例如它返回阿拉伯字符,如果您的手機設置爲阿拉伯語言!)。CFAbsoluteTimeGetCurrent和DST
那麼,你可以建議我一個函數來將CFAbsoluteTimeGetCurrent轉換爲「MySQL like」日期,如「2011-11-03 14:12:10」?
我的第二個問題是:怎麼樣時區和夏令時?無論iPhone時區如何設置,CFAbsoluteTimeGetCurrent始終返回UTC日期?它總是不含DST?
我當然知道,當地的iPhone日期/時間可能是錯的,但毫秒精度不適合我的應用程序:)
預先感謝您很重要!
你說得對,我認爲「奇怪」字符的問題來自NSDateFormatter。我目前的代碼是: NSDate * now = [NSDate date]; NSDateFormatter * dateFormat = [[[NSDateFormatter alloc] init] autorelease]; [dateFormat setDateFormat:@「yyyy-MM-dd HH:mm:ss」]; NSString * mysql_current_time = [dateFormat stringFromDate:now]; ...如果iPhone設置爲阿拉伯語,則返回帶有阿拉伯字符的日期,如果用戶的語言環境包含AM/PM/A.M./P.M,則返回可標記的字符串。變種或一般情況下,如果它不是在24小時格式。 – flip79
@ flip79:你可能想看看' - [NSDateFormatter setLocale:]'方法。 –