[英]Can't convert from NSString to NSDate
我無法將我的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
用斜杠( \\
)分隔了日期組件,但是日期格式化程序期望使用破折號( -
)。
要回答其他問題,可以使用stringByReplacingOccurrencesOfString:withString:
例如:
NSString *date1 = @"2012/12/10 ...";
NSString *date2 = [date1 stringByReplacingOccurrencesOfString:@"/" withString:@"-"];
請注意,這會將每個/
替換為-
,因此請注意時區等。
嘗試以下方法:
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithName:@"UTC"]];
[dateFormatter setDateFormat:@"yyyy/MM/dd HH:mm:ss ZZZ"];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.