2

我正在datetime从数据库中查询 (dd/mm/YYYY hh:mm:ss) 值并将其插入到这样的列表中:

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

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

4

2 回答 2

4

试试这个

ord.invoiceDate = ((DateTime)dt.Rows[i]["invoicedate"]).ToString("dd-MM-yyyy");
于 2013-05-17T10:09:53.557 回答
1

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

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

得到结果后,您可以通过给出如下格式转换为字符串

ord.invoiceDate = invoiceDate.ToString("dd-MM-yyyy");
于 2013-05-17T10:14:32.300 回答