NSTimeInterval 用法

发布于 2024-10-26 09:23:46 字数 582 浏览 5 评论 0原文

我有以下代码:

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

显然这是错误的,但我不明白如何/为什么?

有什么建议吗?谢谢

I have the following code:

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


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


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

This is outputing to the debugger console:

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

Clearly this is wrong but I can't see how/why?

Any advice? Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

爱*していゐ 2024-11-02 09:23:46

要将 NSNumber 转换为 NSUInteger,请使用 NSNumber 的 unsignedIntegerValue 方法,并使用 %u 而不是 %@ 来记录 NSUInteger(请参阅 字符串格式说明符):

NSUInteger converted = [rowValue unsignedIntegerValue];
NSLog(@"UNIX %u",converted);

To convert an NSNumber to NSUInteger, use NSNumber's unsignedIntegerValue method and to log an NSUInteger, use %u instead of %@ (see String Format Specifiers):

NSUInteger converted = [rowValue unsignedIntegerValue];
NSLog(@"UNIX %u",converted);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文