C#将datetime转换为自定义格式

时间:2013-05-17 10:08:26

标签: c# sql

我从数据库中查询datetime(dd / mm / YYYY hh:mm:ss)值并将其插入如下列表中:

ord.invoiceDate = dt.Rows[i]["invoicedate"].ToString();

如何将此字符串转换为dd-MM-YYYY等自定义格式?我不想要小时分钟和秒钟。

2 个答案:

答案 0 :(得分:4)

试试这个

ord.invoiceDate = ((DateTime)dt.Rows[i]["invoicedate"]).ToString("dd-MM-yyyy");

答案 1 :(得分:1)

如果您知道日期时间字符串的格式,则可以使用下面的DateTime.ParseExact方法将其转换为DateTime。如果你不确定格式然后使用DateTime.TryParseExact它将不会在转换失败时引发异常,但结果会得到null值。

var invoiceDate = DateTime.ParseExact(dt.Rows[i]["invoicedate"],
              "dd/mm/YYYY hh:mm:ss", CultureInfo.InvariantCulture);

获得结果后,您可以通过以下格式转换为字符串

ord.invoiceDate = invoiceDate.ToString("dd-MM-yyyy");