NSDateFormatter dateFromString nil问题

问题现象

已知服务器返回日期字符串“Thu Jan 01 08:00:00 CST 1970”,通过如下方式转换成时间戳失败(模拟器成功,真机失败),date为nil。

    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];

    [formatter setDateFormat:@"EEE MMM dd HH:mm:ss 'CST' yyyy"];

    NSDate *date = [formatter dateFromString:time];

    return (int)[date timeIntervalSince1970];

 

问题分析

通过比较真机和模拟器发现 NSLocale不一致,模拟器为“zh-CN”,真机为“en_US”,所以需要设置NSLocale,如下:

[formatter setLocale:[NSLocale localeWithLocaleIdentifier:@"en_US"]];

posted on 2015-01-09 14:04  trako  阅读(449)  评论(0编辑  收藏  举报

导航