2013-10-25 108 views
0

我正在從JavaScript日期到C#這種格式「/Date(1330540200000)/轉換日期「/日期(XXXXXXXXXXXX)/」在C#日期時間

我想這個「/Date(1330540200000)/」格式轉換爲MM:dd:yyyy格式在C# 。

我能夠在JavaScript中轉換它,但在這裏我想轉換它在C#中。

+1

這個數字代表什麼? –

+0

就我個人而言,我儘量避免使用默認的序列化值,並建議您在將日期返回給客戶端之前格式化日期。 – Candide

回答

1

你可以試試這個:

public static string ParseFromString(string dateTime){ 
    return new DateTime(1970,1,1).AddMilliseconds(double.Parse(Regex.Match ("/Date(1330540200000)/", @"(\d+)").Value)).ToString("MM:dd:yyyy"); 
} 
4

有很多javascript組件發送一個timestamp信息作爲日期。您可以使用這樣的功能:

public static DateTime ConvertTimeStampToDateTime(double value) 
{ 
    DateTime origin = new DateTime(1970, 1, 1, 0, 0, 0, 0); //Unix Epoch on January 1st, 1970 

    return origin.AddMilliseconds(value); 
} 

你有DateTime結構後,您可以使用ToString(string format)格式化,只要你想爲一個字符串,樣品:

// a string timeStamp (for sample, in string). 
string timeStampString = "1330540200000"; 

// pass as a double, convert it if it is a string. 
DateTime myDate = ConvertTimeStampToDateTime(double.Parse(timeStampString)); 

string myDateFormated = myDate.ToString("MM:dd:yyyy"); 
+0

如何從該字符串中取出數字? –

+0

您可以使用'double.Parse'功能。看看我的編輯:) –

+0

問題是,當我將它轉換爲字符串時,它來作爲「/ Date(1330540200000)/」而不是「1330540200000」 –