-2

54000秒の秒数があります。午後3時00分00秒の時刻を取得するにはどうすればよいですか。

それを取得するために使用できるdateformatterはありますか?

ありがとう

4

2 に答える 2

11

指定された秒がローカルタイムゾーンにあり、ローカルタイムゾーンに変換するとします。

NSInteger timeInSeconds = 54000;

NSDate *date = [NSDate dateWithTimeIntervalSinceReferenceDate:timeInSeconds]];

NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
[formatter setDateFormat:@"hh:mm:ss a"];

NSString *dateString = [formatter stringFromDate:date];
于 2013-03-07T04:11:36.550 に答える
0

「通常の」日の現在のロケール(つまり、タイムゾーンが変更されていない日)に従って時刻をフォーマットする必要があると仮定します。

double seconds = 54000;

NSDateFormatter * fmt = [NSDateFormatter new];
[dateFormatter setDateStyle:NSDateFormatterNoStyle];
[dateFormatter setTimeStyle:NSDateFormatterLongStyle];
[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];

NSDate *date = [NSDate dateWithTimeIntervalSinceReferenceDate:seconds];
NSString * s = [fmt stringFromDate:date];

// If you are not using ARC,
[fmt release];
于 2013-03-07T04:12:11.747 に答える