9

我有一个看起来像这样的日期时间:

201210120956
ccyyMMDDhhmm

当我尝试这个时:

Dim convertedDate As Date = Date.Parse(DateString)
Return convertedDate

我回来了:

#10/12/2012#

我正在浪费时间。

我已经阅读了这个将字符串转换为日期时间的 vb.net,但是当我使用时,datetime.ParseExact()我得到:

无法解析符号“ParseExact”

有没有办法在不使用子字符串的情况下将其转换为日期时间?直接转换?

4

3 回答 3

23

将解码模式传递给 ParseExact

Dim d as string = "201210120956"
Dim dt = DateTime.ParseExact(d, "yyyyMMddhhmm", Nothing)

ParseExact仅适用于 Net FrameWork 2.0。
如果您仍在使用 1.1,则可以使用 Parse,但您需要为您的字符串提供足够的 IFormatProvider

于 2012-10-12T16:04:16.020 回答
1

您可以尝试使用ParseExact方法

样本

Dim format As String  
format = "d" 
Dim provider As CultureInfo = CultureInfo.InvariantCulture
result = Date.ParseExact(DateString, format, provider)
于 2012-10-12T16:01:06.943 回答
0

作为替代方案,如果您在日期和时间之间放置一个空格,DateTime.Parse则会为您识别格式。这就像你能得到的一样简单。(如果ParseExact仍然没有被识别)

于 2013-11-27T14:48:16.477 回答