2011-09-24 62 views
0

我有一个Ruby服务,它接收到如下的JSON日期: /Date(1311706800000-0500)/ 我需要以某种方式格式化它,以便它可以读入Objective C NSDate。将Ruby JSON日期转换为Objective C NSDate

我曾尝试使用:

seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i 
return Time.at(seconds_since_epoch) 

但返回周一4月3日10:00:00 -0600 43533.

请告诉我到JSON转换成NSDate的可读格式的最好方式?谢谢您的帮助。

回答

0

看起来像JSON的时间以微秒为单位。 Ruby的Time.at需要秒,并且可选地,作为第二个参数,微秒。

str = "1311706800000-0500" 
# ignore the -0500 (might be a timezone) 
secs, microsecs = str.scan(/[0-9]+/)[0].to_i.divmod(1000) 
p Time.at(secs, microsecs) #=> 2011-07-26 21:00:00 +0200 with my locale 
相关问题