格式化DataSet中的datetime列

时间:2009-07-25 15:53:34

标签: c# asp.net dataset asp.net-2.0

我有一个通过读取excel文件填充的数据集。数据集存储来自excel的数据。

数据集中的日期格式为 2 \ 2 \ 2009 12:00:00 AM ,但我需要将数据格式转换为 2 \ 2 \ 2009 。 我想更改该特定列中所有数据的格式。

4 个答案:

答案 0 :(得分:7)

这是一种方式:

foreach (DataRow row in yourDataTable)
{
    DateTime dt = DateTime.Parse(row["Date"].ToString());
    row["Date"] = dt.ToShortDateString();
}

这假设“Date”列只是一个文本字段而不是DateTime字段。

答案 1 :(得分:1)

如果输出是您想要的格式的DateTime对象,则可以使用pattern自定义输出,“2 \ 2 \ 2009”。

string output1 = dt.ToString(@"mm\\dd\\yyyy");
string output2 = dt.ToString("mm/dd/yyyy"); //did you mean this?

答案 2 :(得分:0)

DateTime值或列没有格式。这只是二进制数据。

您希望格式化输出出现在哪里?那是你应该应用格式字符串的地方。例如,如果您希望它出现在ASP.NET DataGrid的列中,那么您可以将DataFormatString的{​​{1}}属性设置为“mm / dd / yyyy”。

答案 3 :(得分:0)

试试这个。它会起作用

var result = from a ds.Tables [0] .AsEnumerable()                          选择new [] {Convert.ToDateTime(a [0])。ToString(“dd / MM / yyyy”)};