繁体   English   中英

如何在SBJSON中解析/ Date(xxx + 0000)/

[英]How to parse /Date(xxx+0000)/ in SBJSON

我正在尝试将.NET服务生成的日期与NSDate对象一起解析为JSON

{
 "Dashboard": {
    "Date": "/Date(1326063600000+0000)/"
    }
}

使用SBJSON转换这种格式化日期的方法是什么? 我使用将值提取到NSString

//dict is NSDictionary with Dashboard
NSString* dateString=[dict objectForKey:@"Date"];

然后停下来。 任何建议将不胜感激。

这是我从.NET进行解析的类别

//parses a date from format "/Date(0000000000000+0000)/"
+(NSDate*)dateFromEpocString:(NSString*)epocString {

    if ([epocString isEqual:[NSNull null]])
        return nil;

    NSString* miliMinutes = [epocString substringWithRange:NSMakeRange(6,13)];
    long long minutesSince1970 = [miliMinutes longLongValue] / 1000;
    int timeOffset = [[epocString substringWithRange:NSMakeRange(19,3)] intValue];
    long long minutesOffset = timeOffset * 60 * 60;
    return [NSDate dateWithTimeIntervalSince1970:minutesSince1970 + minutesOffset];
}

从注释中,听起来好像已经提取了时间戳。

您可能要使用NSDate历元构造函数: dateWithTimeIntervalSince1970:

NSDate *date = [NSDate dateWithTimeIntervalSince1970:SOME_TIME_INTERVAL];

在这种情况下,SOME_TIME_INTERVAL将为NSTimeInterval(只是double的别名)值: 1326063600 不要忘记将得到的值除以1000。NSTimeIntervals以秒为单位,而不是毫秒。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM