我有一个DataTable
,我想复制到另一个DataTable
..但要是我想将其中一列更改为Short Date
格式(类型是原始String
中的Datatable
)。我能够将原始Datatable
中的列添加到新列中,但是当我尝试将列格式设置为Date
类型时,它会将其设置为Datetime
格式。从原始Datatable
复制数据时,这会导致问题,因为新表中的日期设置不正确(即 10/03/2018 00:00:00 更改为 10/01/2018 00:03:00 )。
您知道如何解决此问题吗?也许有更好的方法可以做到这一点?
Dim sColumn As String
Dim dRow As DataRow
For Each dC as DataColumn In dT.Columns
dTRet.Columns.Add (dC.ColumnName)
Next
dTRet.Columns(ColName).DataType = GetType(Date)
For Each row As DataRow in dT.Rows
dRow = dTRet.NewRow
For iC As Integer = 0 To dT.Columns.Count - 1
sColumn = dT.Columns(iC).ColumnName
If sColumn = ColName Then
dRow(sColumn) = Date.ParseExact(row.Item(sColumn), DateFormat,
System.Globalization.DateTimeFormatInfo.InvariantInfo,
Globalization.DateTimeStyles.None)
Else
dRow(sColumn) = row.Item(sColumn)
End If
Next iC
dTRet.Rows.Add (dRow)
Next Row
ColName
:保存要更改的列的名称
dT
:是原始的Datatable
dTRet
:是新的Datatable
预先感谢