2011-05-05 108 views
4

我必须从日期发送DDMMYYY日期才能与API通信。将NSDate格式化为DDMMYYYY?

NSDateComponents * dateComponents; NSCalendar * gregorian; NSDate * date;

gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar]; 

dateComponents = [[NSDateComponents alloc] init]; 
self.date = [gregorian dateByAddingComponents:dateComponents toDate:[NSDate date] options:0]; 

我是否必须使用[dateComponents day]等等?有没有什么方法可以帮助我像在PHP中一样执行该任务?

回答

14

试试这个

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"ddMMyyyy"]; 
NSString *textDate = [NSString stringWithFormat:@"%@",[dateFormatter stringFromDate:[NSDate date]]]; 
NSLog(@"Date %@",textDate); 
[dateFormatter release]; 
+0

该代码运行得非常好:-)再次感谢您7KV7 – clement 2011-05-05 07:47:54

+0

缺少分号;在NSLog声明的末尾,但其他方面完美无缺! – jsherk 2012-12-12 00:00:40

1

刚:

NSDateFormatter *outputFormatter = [[NSDateFormatter alloc] init]; 
    [outputFormatter setDateFormat:@"ddMMyyyy"]; 
    NSString *textDate = [NSString stringWithFormat:@"%@",[outputFormatter stringFromDate:[NSDate date]]]; 
    [outputFormatter release]; 
1

试试这个代码:

NSDateFormatter* dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; 
[dateFormatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"] autorelease]]; 
[dateFormatter setDateFormat:@"ddMMyyyy"]; 
NSDate *current = [NSDate date]; 
NSString *currentstring = [dateFormatter stringFromDate:current] 
0

试试这个:

NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; 

[dateFormatter setDateFormat:@"ddMMyyyy"]; 

NSLog(@"%@", [dateFormatter stringFromDate:[NSDate date]]); 
1
NSDate *date=[NSDate date]; 
    NSDateFormatter *formatter=[[NSDateFormatter alloc]init]; 
    [formatter setDateFormat:@"ddMMyyyy"]; 
    NSString *dateOfGame =[formatter stringFromDate:date]; 
    [formatter release]; 
+0

终于听起来不难,但我不得不知道语言的所有可能性......哼:-) – clement 2011-05-05 07:48:46

+0

语言的所有可能性?我不明白我的 – Gypsa 2011-05-05 08:00:29

+0

xcode可以做什么;) – clement 2011-05-05 08:25:40

0

同意随着鲁本·埃斯波西托

只要改变你这样的代码。

NSDateFormatter *dtFormatter = [[NSDateFormatter alloc]init]; 
[dtFormatter setDateFormat:@"ddMMyyyy"];  
NSString *strDate = [NSString stringWithFormat:@"%@",[dtFormatter stringFromDate:[NSDate date]]]; 
[dtFormatter release]; 
NSLog(@"%@",strDate);