2013-08-30 20 views
0

我目前正在調用外部API並獲取JSON響應。該數據有2個日期字段,我需要解析並顯示在我的應用程序中的表格中。RoR解析.Net日期格式

我遇到的問題是,日期是在.net格式:

/Date(1377183028730-0400)/ 

我如何能解析成可用的格式回報率這有什麼建議?

回答

1

看起來像從一個紀元數毫秒。

你可以使用正則表達式如

if date =~ /Date\((\d+)-(\d+)\)/ 
    Time.at($1.to_i/1000.0) 
end 

後半部分提取第一部分可能是一個時區指示。

+0

使用'date.match(...)'比神祕的Perl-ism'date =〜...'更可取。最後一部分是時區指示符('strftime'中的'%z')。 – tadman

0

嘗試使用Ruby的strptime function。請查看strftime function docs,瞭解可以使用的指令的解釋。

+0

'strptime'對'%s'或'%z'不太滿意。 – tadman

+0

strftime格式化一個Time對象。我遇到的問題是我需要將日期字符串解析爲Ruby時間對象。 – tagCincy

+0

@tadman'%s'和'%z'都可以在Ruby on Rails中使用'strptime',這是這個問題的標籤之一。 @tagCincy'strftime'格式化指令也可以很好地與'DateTime.strptime'一起工作,但由於字符串主要來自曆元數毫秒,因此'Time.at'比我的答案在這裏工作得更好。 – jvperrin