如何在dd/MM/YYYY中格式化NSDate

use*_*945 7 objective-c nsdate nsstring ios

我正在尝试将NSDate纳入格式:20/05/2014 22:30

这是我目前的代码. [dateFormat setDateFormat:@"YYYY-MM-dd\'T\'HH:mm:ssZZZZZ"]; 这工作但格式不像20/05/2014 22:30它显示日期格式如:12-03-2013 12:00:00 +00:00:00

然后我用的时候:

[dateFormat setDateFormat:@"MM/dd/yyyy"];我得到一个null返回值而不是格式化日期.

// timestamp conversion
    NSString *str = [timeStamp objectAtIndex:indexPath.row];
    // convert to date
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
  //  [dateFormat setDateFormat:@"YYYY-MM-dd\'T\'HH:mm:ssZZZZZ"];

 [dateFormat setDateFormat:@"MM/dd/yyyy"];

    NSDate *dte = [dateFormat dateFromString:str];
    cell.timeStampLabel.text = [NSString stringWithFormat:@"%@",dte ];
Run Code Online (Sandbox Code Playgroud)

格式化之前的str原始字符串输出 str 2013-08-23T15:21:19+02:00

谢谢你的帮助

Pra*_*tik 37

你必须这样做,但请先检查你的str的日期格式

NSString *str = [timeStamp objectAtIndex:indexPath.row];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"YYYY-MM-dd\'T\'HH:mm:ssZZZZZ"];


NSDate *dte = [dateFormat dateFromString:str];

[dateFormat setDateFormat:@"dd/MM/yyyy HH:mm"];
cell.timeStampLabel.text = [NSString stringWithFormat:@"%@",[dateFormat stringFromDate:dte]];
Run Code Online (Sandbox Code Playgroud)

第一次设置日期格式与str相同