[英]Issue while parsing timestamp into date and time using Objective-C
我正在使用stringFormat
获取服务器的timestamp
,以miliseconds
。
我必须将其转换为日期和时间,并显示给用户。
我已经使用以下代码完成了它:
+ (NSString *)getDateAndMonthFromTimeStamp:(NSString*)timestampString
{
NSTimeInterval timeStamp = [timestampString integerValue]/1000;
NSDate *date = [NSDate dateWithTimeIntervalSince1970:timeStamp];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];
[dateFormatter setTimeZone:[NSTimeZone defaultTimeZone]];
[dateFormatter setDateFormat:@"dd MMM"];
NSString *dateNmonth = [[dateFormatter stringFromDate:date]uppercaseString];
return dateNmonth;
}
当我在iPhone6中运行它时,它工作正常。 但是,当我在iPhone 5和iPhone5s中运行它时,它显示了我不需要的日期。
我调试了代码,发现了这一点:
timestampString = @"1459498716000"
NSTimeInterval timeStamp = [timestampString integerValue]/1000;
//after this timeStamp becomes:
timeStamp = 2147483;
然后我的约会日期变为1970-01-25 20:31:23 +0000
我怀疑NSTimeinterval
充满了数据。 这是正确的吗?
我怎样才能解决这个问题。
试试这个代码
NSString* takeOffTime = @"1396614600000";
double miliSec = takeOffTime.doubleValue;
NSDate* takeOffDate = [NSDate dateWithTimeIntervalSince1970:miliSec/1000];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.