1

次のコードがあります。

NSNumber *rowValue = [movieDescription objectAtIndex:film];
NSLog(@"ROWVALUE %@",rowValue);


NSUInteger converted = rowValue;
NSLog(@"UNIX %@",converted);


NSDate *date = [NSDate dateWithTimeIntervalSince1970:converted];
NSLog(@"TODAYS DATE %@",date);

これは、デバッガー コンソールに出力されます。

2011-03-24 14:55:37.330 ViRe[27540:307] ROWVALUE 1300906517
2011-03-24 14:55:37.332 ViRe[27540:307] UNIX 1300906517
2011-03-24 14:55:37.338 ViRe[27540:307] TODAYS DATE 1970-01-29 00:12:00 +0000

明らかにこれは間違っていますが、どのように/なぜ見ることができませんか?

何かアドバイス?ありがとう

4

1 に答える 1

2

NSNumber を NSUInteger に変換するには、NSNumber の unsignedIntegerValue メソッドを使用し、NSUInteger をログに記録するには、%@ の代わりに %u を使用します ( String Format Specifiersを参照)。

NSUInteger converted = [rowValue unsignedIntegerValue];
NSLog(@"UNIX %u",converted);
于 2011-03-24T15:13:00.633 に答える