CType(str,DateTime)和DateTime.Parse(str)之间的区别

时间:2014-02-10 11:06:00

标签: vb.net string datetime

我想将str转换为DateTime

我应该在VB.NET中使用哪个选项?为什么?

3 个答案:

答案 0 :(得分:1)

我倾向于这样做:

日期“伪装”为对象

如果我知道对象是日期时间,我使用CType

Dim table As New DataTable("Table")

table.Columns.Add("DATETIME_COLUMN", GetType(DateTime))
table.Rows.Add(Date.Now)
table.AcceptChanges()

Dim d As DateTime = CType(table.Rows(0).Item("DATETIME_COLUMN"), DateTime)

<强>字符串

处理字符串时,我使用DateTime.Parse。请注意,您可以传递cultureinfo。

Dim d As DateTime = DateTime.Parse("10.02.2014", New System.Globalization.CultureInfo("nb-NO"))

未知/混合类型

最后,如果我不能确定数据类型,我使用Convert.ToDateTime

Dim d As DateTime = Convert.ToDateTime(obj, New System.Globalization.CultureInfo("nb-NO"))

答案 1 :(得分:0)

  

CType&amp; CDate是具有已定义功能的VB.NET函数。

Ctype('01/01/2014',DateTime)
  

DateTime.Parse是已定义的BCL(基类库)方法   功能。

Dim value As String = "2000-02-02"
Dim dt As DateTime = DateTime.Parse(value)

答案 2 :(得分:0)

只要您的字符串采用正确的日期格式,您就可以使用CDate()函数。这是最快速,最简单的方法,因为你只需输入7个字符,不包括要转换的字符串:)在效率和速度方面,并没有真正有所作为。