NSDate与 NSString 、long long类型的相互转化
2014-02-21 23:23
435 查看
我的技术博客经常被流氓网站恶意爬取转载。请移步原文:http://www.cnblogs.com/hamhog/p/3560280.html,享受整齐的排版、有效的链接、正确的代码缩进、更好的阅读体验。
NSDate -> NSString:
NSString -> NSDate:
其中的zzz表示时区,可以省去。
NSDate -> long long:
long long -> NSDate:
注意这里timeInteval的单位是秒(s),而常用的单位是毫秒(ms),因此需做乘除1000的转化。
【NSDate <-> NSString】
NSDateFormatter可在指定的日期格式下使NSDate与NSString相互转化。NSDate -> NSString:
+(NSString*)stringFromDate:(NSDate*)date{ NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss zzz"]; return [dateFormatter stringFromDate:date]; }
NSString -> NSDate:
+(NSDate*)dateFromString:(NSString*)dateString{ NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss zzz"]; return [dateFormatter dateFromString:dateString]; }
其中的zzz表示时区,可以省去。
【NSDate <-> long long】
我们经常用一个long long类型的变量——从1970年以来的毫秒数来表示时间。NSDate提供方法与这种整数形式相互转化。NSDate -> long long:
+(long long)longLongFromDate:(NSDate*)date{ return [date timeIntervalSince1970] * 1000; }
long long -> NSDate:
+(NSDate*)dateFromLongLong:(long long)msSince1970{ return [NSDate dateWithTimeIntervalSince1970:msSince1970 / 1000]; }
注意这里timeInteval的单位是秒(s),而常用的单位是毫秒(ms),因此需做乘除1000的转化。
相关文章推荐
- async/task/await
- hadoop的安装与配置(伪分布式模式安装)
- ASIHttpRequest网络请求库的使用
- 矩阵
- ExtJS学习之路第八步:Window组件
- nginx 升级成 tengine 的代码
- Android中的Bundle类
- gcc与g++
- spring的beanFactory和factoryBean
- JavaScript 闭包
- RAID练习
- 关于 java.util.concurrent.RejectedExecutionException
- Working Practice-技术领导人如何起步
- POJ 3292 Semi-prime H-numbers (筛半H-素数)
- [MySQL] explain执行计划解读
- CMS如何提供XML格式的接口
- 字符编码笔记:ASCII,Unicode和UTF-8
- 392高校毕业设计选题
- poj 1664 放苹果(递推,记忆化搜索)简单题
- Linux makefile 教程 非常详细,且易懂