2

日付に時間を格納しようとしています。この場合は 1.5 秒です。次のように日付に時刻を保存します。

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"mm:ss.SS"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0.0]];  
NSDate *date1 = [dateFormatter dateFromString:@"00:01.50"];

しかし、デバッグ領域を見ると、date1 の値が次のように設定されていることがわかります。

date1 = (NSDate *) 0x1dd32b30 2000-01-01 01:00:01 CET

なぜこれが起こっているのか誰か教えてもらえますか?

4

2 に答える 2

0

日付で NSLog を試行すると、日付が GMT 形式でのみ返されます。したがって、正しい時刻または日付を取得しているかどうかを確認したい場合は、日付を文字列と NSLog に変換します。

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"mm:ss.SS"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0.0]];  
NSDate *date1 = [dateFormatter dateFromString:@"00:01.50"];

NSString *dateString = [dateFormatter stringFromDate:date1];
NSlog(@"%@",dateString);
于 2013-06-25T11:46:43.770 に答える