从字符串yyyyMMdd到类型整数的转换无效

Geo*_*rge 2 vb.net format datetime tostring

我有一个包含数据表的数据集,我枚举该数据表中的所有行.当尝试格式化该行中的列时,我遇到了异常.(部分)代码是:

For Each dr As DataRow In ds.Tables("records").Rows
    file = dr("timestamp").ToString("yyyyMMdd") & "~.wav"
Next
Run Code Online (Sandbox Code Playgroud)

这会导致以下错误消息:

从字符串yyyyMMdd到类型Integer的转换无效. (从荷兰语错误消息翻译成英语等价物)

dr("timestamp").GetType.FullName导致"System.DateTime",所以我不明白为什么我遇到这个异常,例如Now.ToString("yyyyMMdd")导致"20091002"和"现在"与dr("timestamp")的类型相同,即"System.DateTime".

Jus*_*all 13

尝试

For Each dr As DataRow In ds.Tables("records").Rows
    file = CDate(dr("timestamp")).ToString("yyyyMMdd") & "~.wav"
Next
Run Code Online (Sandbox Code Playgroud)

  • 虽然这个复选标记非常大,但我没有注意到它;)尽管现在接受了答案. (2认同)