C# 在C中不使用循环更改datatable列中的DATETIME格式#
我有一个数据表,其中有一列“subscribeDate”,日期为MM/dd/yyyy hh:MM:ss格式。我想将此列中的所有日期更改为MM dd yyyy hh:MM:ss格式。有没有一种方法可以在不运行循环的情况下执行此操作?我希望C# 在C中不使用循环更改datatable列中的DATETIME格式#,c#,datetime,datatable,C#,Datetime,Datatable,我有一个数据表,其中有一列“subscribeDate”,日期为MM/dd/yyyy hh:MM:ss格式。我想将此列中的所有日期更改为MM dd yyyy hh:MM:ss格式。有没有一种方法可以在不运行循环的情况下执行此操作?我希望DataTable中的值是DateTime或DateTimeOffset类型。 假设是这样,它们没有格式。它们只是日期和时间。如何将它们转换为字符串取决于您 如果它们还不在适当的数据类型中,您应该尝试更改获取数据的方式。尽可能早地将其从字符串格式转换为更合适的数据
DataTable
中的值是DateTime
或DateTimeOffset
类型。
假设是这样,它们没有格式。它们只是日期和时间。如何将它们转换为字符串取决于您
如果它们还不在适当的数据类型中,您应该尝试更改获取数据的方式。尽可能早地将其从字符串格式转换为更合适的数据类型,并且仅在确实需要时才将其转换回字符串
您没有解释如何显示
数据表
,但我知道的大多数方法都允许您指定格式字符串-在这里您可以指定MM dd yyyy HH:MM:ss
格式。(注意HH
而不是HH
,以获得24小时。)如果你的应用程序中没有文化限制(我不知道你的应用程序是如何工作的),那么你应该可以使用convert方法来实现这一点。
像这样的事情:
myTable.Columns["Date"].Convert(
val => DateTime.Parse(val.ToString()).ToString("dd/MMM/yyyy"));
您可以在中找到转换函数,列的数据类型是什么?