我无法将 NSString 转换为 NSDate。这是代码:
+ (NSDate *) stringToNSDate: (NSString *) dateString{
[NSDateFormatter setDefaultFormatterBehavior:NSDateFormatterBehavior10_4];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss ZZZ"];
NSDate *dateFromString = [dateFormatter dateFromString:dateString];
NSLog(@"dateString: %@ datefromstring: %@", dateString, dateFromString);
return dateFromString;
}
//dateFromString is nil.
我应该怎么办?谢谢!
顺便说一句,dateString 将始终包含以下格式的字符串日期:“2012/02/10 08:01:25 +0000”
从您提供的信息来看,问题似乎出在您的dateString
用斜杠分隔日期部分 (\
),但您的日期格式化程序需要破折号(-
).
Edit
要回答您的其他问题,您可以使用stringByReplacingOccurrencesOfString:withString: https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/Reference/NSString.html#//apple_ref/doc/uid/20000154-SW6.
例如:
NSString *date1 = @"2012/12/10 ...";
NSString *date2 = [date1 stringByReplacingOccurrencesOfString:@"/" withString:@"-"];
请注意,这将替换每个/
with -
,所以请注意时区等。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)