使用 vb.net 将字符串时间/日期值转换为 dateTime 值

Posted

技术标签:

【中文标题】使用 vb.net 将字符串时间/日期值转换为 dateTime 值【英文标题】:convert string Time/Date values to dateTime value using vb.net 【发布时间】:2013-10-02 08:05:16 【问题描述】:

我必须控制(日期选择器,时间选择器),我将值作为字符串,我想在这个对象中设置它们,我该怎么办?

请注意,.Date 在表中被声明为 dateTime。

dim  DateVal As String
dim TimeVal As String

 With Object

  .Date = ???

End With

【问题讨论】:

您将它们“视为”字符串,如何更重要,为什么?如果您使用DateTimePicker 控件,它有一个Value property,它返回一个DateTime 而不是一个字符串。 我正在创建一个提醒,用户必须一次选择提醒日期,我将这些值传递给 Web 服务方法,因此我将这些值作为字符串接收。 @蒂姆施梅尔特 【参考方案1】:

您将它们“视为”字符串,如何以及更重要的是,为什么?如果您使用 DateTimePicker 控件,它有一个 Value property 返回 DateTime 而不是字符串。

所以只需使用该属性,不要将类型转换或装箱为对象,也不要将其转换为String,如果您不想显示它,请保持原样,DateTime 变量。

我正在创建提醒,用户必须选择提醒日期 时间,我通过 web 服务方法传递这些值,所以我收到 值作为字符串。

然后你问如何将字符串转换为DateTime,使用Date.ParseDate.TryParse

如果格式通用:

Dim dt As Date = Date.Parse(dateString)

如果可能无效:

Dim dt As Date
If Date.TryParse(dateString, dt) Then
    ' ....
End If

如果格式不常见或与当前文化不同(阅读:http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx):

Dim format = "MMM dd, yyyy" ', e.g.: Oct 02, 2013
Dim dt As Date
If Date.TryParseExact(dateString, format, CultureInfo.InvariantCulture, DateTimeStyles.None, dt) Then
     ' .... 
End If

【讨论】:

以上是关于使用 vb.net 将字符串时间/日期值转换为 dateTime 值的主要内容,如果未能解决你的问题,请参考以下文章

vb net中怎么样将字符串类型转换成日期型

将 vb.net 类对象转换为 vb.net 中的 JSON 字符串

在VB.NET中如何将日期类型转化为String型?

将日期时间值转换为字符串

vb.net在textbox1中输入六个数字后,自动将格式转换为时间格式,如输入120314自动变成12:03:14,怎么操作

从两个日期计算年龄 vb.net