API リクエストから sの形式で返されたものがstart_times
あります。end_times
NSDecimalNumber
NSDecimalNumber
これらの をに正常に変換できましたNSDate
が、コードはタイム ゾーンを考慮していません。
デバイスのデフォルトのタイムゾーンを使用する必要があります。
API リクエストから sの形式で返されたものがstart_times
あります。end_times
NSDecimalNumber
NSDecimalNumber
これらの をに正常に変換できましたNSDate
が、コードはタイム ゾーンを考慮していません。
デバイスのデフォルトのタイムゾーンを使用する必要があります。
これは、現在のロケールで必要なことを行う必要があります
double unixTimeStamp =1304245000;
NSTimeInterval _interval=unixTimeStamp;
NSDate *date = [NSDate dateWithTimeIntervalSince1970:_interval];
NSDateFormatter *formatter= [[NSDateFormatter alloc] init];
[formatter setLocale:[NSLocale currentLocale]];
[formatter setDateFormat:@"dd.MM.yyyy"];
NSString *dateString = [formatter stringFromDate:date];
Unix 時間にはタイムゾーンがありません。1970 年 1 月 1 日の午前 0 時からの秒数として UTC で定義されます。
を使用して、正しいタイム ゾーンで NSDates を取得する必要があります。
[NSDate dateWithTimeIntervalSince1970:myEpochTimestamp];
このようなものを試してみてください..
NSDate* sourceDate = ... // your NSDate
NSTimeZone* sourceTimeZone = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];
NSTimeZone* destinationTimeZone = [NSTimeZone systemTimeZone];
NSInteger sourceGMTOffset = [sourceTimeZone secondsFromGMTForDate:sourceDate];
NSInteger destinationGMTOffset = [destinationTimeZone secondsFromGMTForDate:sourceDate];
NSTimeInterval interval = destinationGMTOffset - sourceGMTOffset;
NSDate* destinationDate = [[[NSDate alloc] initWithTimeInterval:interval sinceDate:sourceDate] autorelease];