我有一個通過讀取excel文件填充的數據集。數據集存儲來自excel的數據。在DataSet中格式化datetime列
在數據集中的日期在格式2 \ 2 \ 2009 12:00:00 AM但我需要轉換爲2 \ 2 \ 2009的數據格式。 我想更改該特定列中所有數據的格式。
我有一個通過讀取excel文件填充的數據集。數據集存儲來自excel的數據。在DataSet中格式化datetime列
在數據集中的日期在格式2 \ 2 \ 2009 12:00:00 AM但我需要轉換爲2 \ 2 \ 2009的數據格式。 我想更改該特定列中所有數據的格式。
這裏有一種方法:
foreach (DataRow row in yourDataTable)
{
DateTime dt = DateTime.Parse(row["Date"].ToString());
row["Date"] = dt.ToShortDateString();
}
這是假設的「日期」一欄只是一個文本字段,而不是已經是DateTime字段。
你打我提交按鈕...我有相同的答案 – 2009-07-25 16:03:40
我有一個數據集中的日期時間列,我想改變該列的數據格式單獨 – Jebli 2009-07-25 16:04:54
唧唧!不妨礙我的代碼編譯的美麗。 =) – MusiGenesis 2009-07-25 16:04:57
如果它是一個DateTime對象到您想要的格式「2 \ 2 \ 2009」,您可以使用pattern自定義輸出。
string output1 = dt.ToString(@"mm\\dd\\yyyy");
string output2 = dt.ToString("mm/dd/yyyy"); //did you mean this?
A DateTime
值或列沒有格式。這只是二進制數據。
你想要格式化輸出出現在哪裏?這就是你應該使用格式字符串的地方。例如,如果您希望它出現在ASP.NET DataGrid
的列中,則可以將BoundColumn
的DataFormatString
屬性設置爲「mm/dd/yyyy」。
試試這個。它會工作
var result = from a in ds.Tables [0] .AsEnumerable() select new [] {Convert.ToDateTime(a [0])。ToString(「dd/MM/yyyy」)} ;
該列是文本列還是日期時間列? – Keltex 2009-07-25 15:59:59
DateTime專欄 – Jebli 2009-07-26 08:58:47