[英]NSDateFormatter how can I format this date?
我試圖格式化NSString,看起來像:
@ “2012-07-19T02:58:33Z”
使用以下格式的NSDate:
@“MMMM dd,yyyy HH:mm a”
NSDateFormatter總是返回nil,我認為這是因為它無法將NSString的當前格式轉換為所需的格式。 這是我的代碼:
NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
[formatter setDateFormat:@"MMMM dd, yyyy HH:mm a"];
NSLocale *enUSLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
[formatter setLocale:enUSLocale];
NSDate *date = [formatter dateFromString:dateString];
我是否需要以不同的格式存儲日期? 我可以使用當前的NSString進行此轉換嗎?
謝謝!
你的dateFormatter與你的dateString不匹配...試試這個
NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
[formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss'Z'"];
NSLocale *enUSLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
[formatter setLocale:enUSLocale];
NSDate *date = [formatter dateFromString:dateString];
[formatter setDateFormat:@"MMMM dd, yyyy HH:mm a"];
dateString=[formatter stringFromDate:date];
現在dateString包含“2012年7月19日02:58 AM”
希望這可以幫助
試試吧。
NSString *myDateString=@"2012-07-19T02:58:33Z";//@"2009-07-06T17:42:12";
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss'Z'"];
NSDate *myDate = [[NSDate alloc] init];
myDate = [dateFormatter dateFromString:myDateString];
NSLog(@"MyDate is: %@", myDate);
您的問題已經得到解答 。
將字符串存儲在NSDate中,格式為原始字符串:
NSString *originalDateString = @"2012-07-19T02:58:33Z";
NSDateFormatter *originalFormatter = [[NSDateFormatter alloc]init];
[formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss'Z'"];
NSLocale *enUSLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
[formatter setLocale:enUSLocale];
NSDate *originalDate = [formatter dateFromString:originalDateString];
NSDateFormatter *newFormatter = [formatter setDateFormat:@"MMMM dd, yyyy HH:mm a"];
NSString *newDateString = [formatter stringFromDate:originalDate];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.