2012-02-07 58 views
0

Flex 4.5中的編程以字符串形式獲取日期 - 需要轉換

我以String形式獲取日期。

我不知道我得到的日期或時間。

我想將字符串轉換爲日期,並只需要幾小時&分鐘。

例如:

獲得 - 「2012-02-07T13:35:46 + 02:00」

我希望看到:13:35。

建議或任何其他解決方案?

經過一番挖掘,解決方法:

var myDate:Date; 

myDate = DateFormmater.parseDateString(myDateString); 

var dateResult:String = myDate.getHours() + ":" + myDate.getMinutes(); 

還是要謝謝你! :-)!

+4

如果你覺得你自己的答案比其他人好,你應該添加它作爲答案(而不是編輯你的問題)並接受它。對於訪問此頁面的其他用戶來說這更清楚。 – RIAstar 2012-02-07 12:41:15

+0

[檢查鏈接](http://livedocs.adobe.com/flex/3/html/help.html?content=08_Dates_and_times_3.html) – joshua 2012-02-07 11:42:14

+0

在那裏,它不會幫助,因爲我得到一個字符串,我不知道它有什麼或它是如何呈現的......我只知道我需要從那裏獲得小時和分鐘。 – Pisti 2012-02-07 11:44:27

回答

1

你可以使用date.getHours()和date.getMinutes()。請嘗試以下操作:

var d:Date = DateField.stringToDate("your_date_string","YYYY-MM-DD"); 
trace("hours: ", date.getHours()); // returns 13 
trace("minutes: ", date.getMinutes()); // returns 35 
0
private function init():void 
{   
    var isoStr:String = "2012-02-07T13:35:46+02:00";   
    var d:Date = new Date;  
    d = isoToDate(isoStr)  
    trace(d.hours); 
} 

private function isoToDate(value:String):Date 
{ 
    var dateStr:String = value; 
    dateStr = dateStr.replace(/\-/g, "/");  
    dateStr = dateStr.replace("T", " ");  
    dateStr = dateStr.replace("+02:00", " GMT-0000"); 
    return new Date(Date.parse(dateStr)); 
} 
0

我看你已經得到了答案,但對於未來的用戶,在這兒呢。

var myDateString:String="2012-02-07T13:35:46+02:00" 

//This is of the format <yyyy-mm-dd>T<hh:mm:ss><UTC-OFFSET AS hh:mm> 
//You could write your own function to parse it, or use Flex's DateFormatter class 

var myDate:Date=DateFormatter.parseDateString(myDateString); 

//Now, myDate has the date as a Flex Date type. 
//You can use the various date functions. In this case, 

trace(myDate.getHours()); //Traces the hh value 
trace(myDate.getMinutes()); //Traces the mm value 
相關問題