2012-08-08 55 views
0

我有一個日期時間這樣日期時間迄今爲止只有在目標C

2012-01-01 10:00:00 

我需要把它轉換成迄今爲止,只有這樣

2012-01-01 

誰能幫助我,請 這是我的代碼

NSDate *adate   = objIStruct_Conference.m_DtDate; 
     NSLog(@"DATE========%@",objIStruct_Conference.m_DtDate); 
     NSString *DateString = [NSString stringWithFormat:@"%@", adate ]; 

     NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 
     [formatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease]]; 
     [formatter setDateFormat:@"yyyy:MM:dd"]; 
     NSLog(@"NEW DATE====%@", [formatter stringFromDate:adate]); 
     [formatter release]; 

我收到日期===== 2012-01-01 10:00:00,新的日期=====(空)

+0

您可以登錄我'adate'的價值? – holex 2012-08-08 10:22:20

回答

4
NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 
[formatter setDateFormat:@"yyyy:MM:dd"]; 
NSLog(@"%@", [formatter stringFromDate:[NSDate date]]); 
[formatter release]; 

NSDateFormatter

+0

不能正常工作... 得到空值 – Melbourne 2012-08-08 09:55:04

+0

您可以發佈您使用過的代碼嗎? – Aravindhan 2012-08-08 09:58:30

+0

任何想法...請幫助 – Melbourne 2012-08-08 10:02:46

0

類的引用請使用此代碼:

NSDateFormatter *dateFormat = [[[NSDateFormatter alloc] init] autorelease]; 
[dateFormat setDateFormat:@"yyyy-MM-dd"]; 
NSLog(@"%@",[dateFormat stringFromDate:date]); 
0

看來你adate指針會nil,因爲它的工作完美的我在實際設備上與有效的NSDate,但當我設置_date爲零,輸出將是nil在你的情況。

NSDate *_date = [NSDate date]; 
NSDateFormatter *_dateFormatter = [[NSDateFormatter alloc] init]; 
[_dateFormatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]]; 
[_dateFormatter setDateFormat:@"yyyy-MM-dd"]; 
NSLog(@"%@", [_dateFormatter stringFromDate:_date]); 

輸出爲:

2012-08-08