2017-10-09 158 views
1

在某些情況下,我得到currentDateString爲零。我的應用程序處於活動狀態,因此無法找到確切的方案。NSDate當前日期返回零

NSDate *currentDate = [NSDate date]; 
NSCalendar *myCalendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSCalendarIdentifierGregorian]; 
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm"]; 
NSString *currentDateString = [dateFormatter stringFromDate:currentDate]; 
+0

「我的應用程序正在運行,所以我無法找到確切的場景。」如果你有崩潰日誌,你應該[symbolicate](https://stackoverflow.com/questions/25855389/how-to-symbolicate-crash-log-xcode)。 – the4kman

+0

我沒有崩潰日誌。對於服務器調用正在傳遞當前日期。但對於某些情況,當前日期以零傳遞。 –

+0

檢查您當前的日期格式是否與您期望的不同。 – AshokPolu

回答

0

我試過這段代碼。我得到了正確的結果。請設置DateFormatter區域設置

NSDate *currentDate = [NSDate date]; 
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
    [dateFormatter setLocale:[NSLocale localeWithLocaleIdentifier:@"en_US_POSIX"]]; 
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm"]; 
    NSString *currentDateString = [dateFormatter stringFromDate:currentDate];