我有字符串“2013-12-23T12:02:01 + 05:30” 我想转换成日期,但我得到的NSDate为零 这是我的代码
// Convert string to date object
NSString *dateStr = @"2013-12-23T12:02:01+05:30";
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy, MM DD 'T' HH:mm:ss Z"];
NSDate *date = [dateFormat dateFromString:dateStr];
答案 0 :(得分:2)
您的字符串格式与日期字符串不匹配:
NSString *dateStr = @"2013-12-23T12:02:01+05:30";
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZ"];
NSDate *date = [dateFormat dateFromString:dateStr];
在您的示例日期中,日期中使用了-
,您使用的格式使用。同样
DD
将为您提供一年中的日期而不是月份。秒和时区偏移后没有空格。
答案 1 :(得分:0)
您需要设置正确的日期格式以匹配日期字符串
NSString *dateStr = @"2013-12-23T12:02:01+05:30";
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZ"];
NSDate *date = [dateFormat dateFromString:dateStr];