2016-06-22 7 views
0

Xcodeログコンソールに何か変更して、ローカルタイムゾーンで出力することはできますか(GMT)?Xcodeログコンソールを変更して、ローカルマシンのタイムゾーン(GMTではなく)で時刻を出力できますか?

私は次のコードを使用

NSDateComponents *comp = [[NSDateComponents alloc] init]; 
[comp setYear:1979]; 
[comp setMonth:5]; 
[comp setDay:10]; 
[comp setHour:10]; 
[comp setMinute:30]; 
[comp setSecond:0]; 
[comp setTimeZone:[NSTimeZone localTimeZone]]; 

NSCalendar *gregorian = [[NSCalendar alloc] 
        initWithCalendarIdentifier:NSCalendarIdentifierGregorian]; 
NSDate *dateOfBirth = [gregorian dateFromComponents:comp]; 
NSLog(@"\nDate of birth in GMT %@\n\n", dateOfBirth); 

ログコンソールで次の出力生成します。あなたはそれが実際にdescriptionメソッドを呼び出して、このようにNSDateを評価するとき

Date of birth in GMT 1979-05-10 08:30:00 +0000 

答えて

1

を、これをUTCで日付を返します。あなたは、ユーザーに日付を表​​示したい場合は、NSDateFormatterを使用する必要がありますが、簡単なロギングのためにあなたはdescriptionWithLocale:使用することができます - 助けThanks..that

NSLog(@"\nDate of birth in local time zone %@\n\n", [dateOfBirth descriptionWithLocale:[NSLocale currentLocale]]); 
+0

を...しかし、どのようにすることができますNSLocaleが正しくINIT?以下は間違っています。 'NSLocale * localTime = [[NSLocale alloc] init]]; ' –

+0

' [NSLocale currentLocale] 'の後ろにあるロケールはあなたに現在のユーザーロケールを与えます。 'initWithLocaleIdentifier'を使って特定のロケールを取得できます。例えば'[[NSLocale alloc] initWithLocaleIdentifier:@" en-us "]' – Paulw11

関連する問題