OGeek|极客世界-中国程序员成长平台

标题: iOS : Specifying unix time in NSDateFormatter's format string [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 15:57
标题: iOS : Specifying unix time in NSDateFormatter's format string

我在服务器的响应中收到这种格式 "/Bla(1344433014807)/" 的日期。 1344433014807 是从 1970 年 1 月 1 日开始的秒数。

我在我使用的网络引擎中也有这段代码:

NSDateFormatter* dateformatter = [[NSDateFormatter alloc] init];
[dateformatter setDateFormat:dateFormat];
NSDate *date = [dateformatter dateFromString:dateString];

问题:如何指定正确的 dateFormat 以从 dateString 中获取日期,例如 @"/Bla(1344433014807)/"甚至有可能吗?

注意:在引擎中我无权使用 dateString 进行操作。我只能设置 dateFormat。



Best Answer-推荐答案


Apple Documentation 为您的查询提供解决方案

NSDate* date = [NSDate dateWithTimeIntervalSince1970:123456789];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat"yyyy-MM-dd HH:mm:ss zzz"];
NSString *dateString = [dateFormatter stringFromDate:date]);

/Bla 部分是与实际纪元时间一起传递的不必要值,即 1344433014807。Unix 时间是 Unix 纪元是 1970 年 1 月 1 日 00:00:00 UTC 时间(或 1970-01-01T00:00:00Z ISO 8601)。引用this

关于iOS : Specifying unix time in NSDateFormatter's format string,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12161369/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4