UTC時刻を希望の日付形式に変換するのに少し苦労しています。
2012-03-10T09:30:00Z
以下の形式に変換する必要があります
3:00:00pm April 19, 2012
誰かが私がこれを解決するのを手伝ってくれませんか?
私は以下のように試しました、
NSString *formatted;
NSDateFormatter *formatter = [[NSDateFormatter alloc] init] ;
[formatter setTimeStyle:NSDateFormatterShortStyle];
[formatter setDateFormat:@"HH:mm:ss EEEE, MMM d"];
// Here datetime= 2012-03-10T09:30:00Z
NSDate *date = [NSDate dateWithTimeIntervalSince1970: [datetime intValue]];
NSString *dateString = [formatter stringFromDate:date];
NSLog(@"dateString: %@", dateString);
しかし、「1月1日木曜日06:03:32」のように間違った日付を印刷します。訂正してください。
更新: 別の問題が発生しています。正しい時刻が表示されませんが、正しい日付が表示されます。私のコードは以下の通りです。
NSString *formatted;
NSDateFormatter *formatter = [[NSDateFormatter alloc] init] ;
[formatter setTimeStyle:NSDateFormatterShortStyle];
[formatter setDateFormat:@"HH:mm:ss EEEE, MMM d"];
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setTimeZone:[NSTimeZone timeZoneWithName:@"UTC"]];
[df setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss'Z'"];
NSDate *date = [df dateFromString:datetime];
NSString *dateString = [formatter stringFromDate:date];
NSLog(@"dateString: %@", dateString);
ありがとうございました!