首页 > 代码库 > NSDate与 NSString 、long long类型的相互转化
NSDate与 NSString 、long long类型的相互转化
我的技术博客经常被流氓网站恶意爬取转载。请移步原文:http://www.cnblogs.com/hamhog/p/3560280.html,享受整齐的排版、有效的链接、正确的代码缩进、更好的阅读体验。
【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的转化。
NSDate与 NSString 、long long类型的相互转化
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。