別の HTML ページから記事を解析するために、アプリで AFFeedParser を使用しました。
解析することで、書かれたarticle DATE like
"Thu, 06 Dec 2012 17:44:22 +0000\n\t\t"
文字列として。
これを Date のように変換するにはどうすればよいThursday,December 06,2012
ですか?
NSString *dateStr=@"Thu, 06 Dec 2012 17:44:22 +0000\n\t\t";
NSString *getDate=[[dateStr componentsSeparatedByString:@"\\"]objectAtIndex:0];
ここでは、日付と時刻のローカル表現に注意する必要があるため、使用する必要があります。
NSDateFormatter dateFormat = [NSDateFormatter dateFormatFromTemplate:@"yMMMMd" options:0 locale:[NSLocale systemLocale]];
NSDate *date=[dateFormat dateFromString:getDate];
NSLog(@"dateString = %@", [dateFormat stringFromDate:date]);
ログも参照してください。わかりました...
NSString *yourStringDate = @"Thu, 06 Dec 2012 17:44:22 +0000\n\t\t";
NSString *str =[yourStringDate stringByReplacingOccurrencesOfString:@"\n" withString:@""];
str =[str stringByReplacingOccurrencesOfString:@"\t" withString:@""];
[str retain];
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss z"];
NSDate *date = [dateFormatter dateFromString: str];
dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setDateFormat:@"EEEE,LLLL dd,yyyy"];
NSString *convertedString = [dateFormatter stringFromDate:date];
NSLog(@"Converted String : %@",convertedString);
OUTPUT IS : 変換された文字列 : 2012 年 12 月 6 日木曜日
また、文字列からNSDateを取得するための別の回答も参照してください。ただし、上記のようにフォーマットを設定するだけで、フォーマットをそのフォーマットから変更するだけです...
これがお役に立てば幸いです....
答えを見つけてください:
NSString *inputDate=@"Thu, 06 Dec 2012 17:44:22 +0000\n\t\t";
NSString *trimDate=[[inputDate componentsSeparatedByString:@"+"]objectAtIndex:0];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init] ;
[dateFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss"];
NSDate *date = [dateFormatter dateFromString:trimDate];
[dateFormatter setDateFormat:@"EEEE, MMMM dd,yyyy"];
NSString *dateString = [dateFormatter stringFromDate:date];
NSLog(@"dateString = %@", dateString);
出力:
dateString = Thursday,December 06,2012