从字符串到带有 PM 的日期的转换在 VB.Net 中无效

问题描述 投票:0回答:1

我在使用 VB.Net Windows 应用程序(框架 4.8)从 MS Access 数据库获取数据时收到以下错误。

 System.InvalidCastException: 'Conversion from string "06/23/2016 06:04:39 PM" to type 'Date' is not valid.'

下面是我正在使用的代码。

   menu.SubItems.Add(CDate(dr("Field1").ToString("MM/dd/yyyy hh:mm tt"))

如何解决这个问题?

vb.net ms-access
1个回答
0
投票

尝试使用

ParseExact
:

Dim textDate As String =  "06/23/2016 06:04:39 PM"
Dim thisDate As DateTime

Dim format As String
Dim provider As System.Globalization.CultureInfo

format = "MM/dd/yyyy hh:mm:ss tt"
provider = System.Globalization.CultureInfo.CreateSpecificCulture("en-US")

thisDate = DateTime.ParseExact(textDate, format, provider)
Console.WriteLine(thisDate.ToString(format, provider))

' Output:
' 06/23/2016 06:04:39 PM
© www.soinside.com 2019 - 2024. All rights reserved.