我想遍歷一個數據集並將SQL Server mm/dd/yyyy hh:mm:ss tt
(例如2011/1/1 3:56:50 PM)返回的默認格式的所有DateTime列的格式更改爲dd-Mon-yyyy
(例如01-Jan -2011)。這可能嗎?更改數據列日期時間格式?
我可以通過下面的代碼塊訪問的數據表中的每個表中的數據集:
Using ds As DataSet = _bo.getHistoryDataSet(projectId)
For Each dt As DataTable In ds.Tables
For Each col As DataColumn In dt.Columns
If col.DataType Is GetType(DateTime) Then
//Format column here?
End If
Next
Next
End Using
但我不能似乎能夠格式分配給列。有沒有辦法給列分配一個通用格式,還是必須循環遍歷這個循環中的每一行,然後分配row(column) = row(column).ToString("Format Here")
?
謝謝!
'DateTime' ***不具有格式***;一個'DateTime' *只是一個數字* - 在它周圍有一些語義。當顯示* DateTime時,像「格式」這樣的概念適用於用戶界面,但不適用於'DateTime'本身。這有點像說「我有一個布爾屬性;我怎樣才能使用斜體?」 –
'ToString()'格式可以簡單地爲'「dd-MMM-yyyy」'。但是,正如其他人所說,格式用於顯示日期。您無法設置DataTable中列的格式。 – JDB
我使用DataTable使用EPPlus打印出Excel工作簿。我想要做的就是在寫出工作簿之前更改DateTime列中單元格的格式。到目前爲止,我只是做了一些錯誤檢查,然後使用EPPlus的LoadFromDataTable方法將表寫入工作簿。我不能循環遍歷表格並更改每個DateTime列中單元格的字符串格式? – TimeBomb006