这是我的 NSString ,
myDate : 2011-06-07 11:23:47 0000
这是代码,
NSTimeZone *currentDateTimeZone = [NSTimeZone defaultTimeZone];
NSDateFormatter *currentDateFormat = [[NSDateFormatter alloc]init];
[currentDateFormat setTimeZone:currentDateTimeZone];
[currentDateFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss Z"];
NSDate *tempDate = [currentDateFormat dateFromString:second];
仍 tempDate 获取值nil
有人可以帮忙吗?
答案 0 :(得分:3)
你是如何获得日期字符串的?它需要2011-06-07 11:23:47 +0000
才能发挥作用。
答案 1 :(得分:2)
试试这个, 这是从字符串中获取日期的功能。
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setFormatterBehavior:NSDateFormatterBehavior10_4];
[df setDateFormat:@"EEE, dd MMM yy HH:mm:ss"];
NSDate *convertedDate = [df dateFromString:stringDate];
[df release];
// [convertedDate description]
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setAMSymbol:@"AM"];
[formatter setPMSymbol:@"PM"];
[formatter setDateFormat:@"MM/dd/yyyy hh:mm:a"];
return [formatter stringFromDate:convertedDate];
答案 2 :(得分:1)
我认为,它与TimeZone无关,但设备24小时设置。 开发人员必须检查设备时间是否为24小时,然后他们应该使用HH,如果设备时间是12小时,那么他们应该使用hh。
答案 3 :(得分:0)
NSTimeZone *currentDateTimeZone = [NSTimeZone defaultTimeZone];
NSDateFormatter *currentDateFormat = [[[NSDateFormatter alloc]init] *autorelease*];
[currentDateFormat setTimeZone:currentDateTimeZone];
[currentDateFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss *ZZZZ*"];
NSDate *tempDate = [currentDateFormat dateFromString:second];
添加 自动释放 和 ZZZZ Z的内容。