将字符串转换为日期时间

时间:2011-06-17 15:10:57

标签: vb.net datetime

  

可能重复:
  Convert string to DateTime in c#

我正在尝试将格式为“20110617111051”的字符串转换为日期时间。 目前我正在使用String.SubString()函数来提取年,月,日,格式化标准字符串的时间,然后使用Convert.ToDateTime(string)。还有其他简单的方法吗?

Dim x as String="20110617110715"
Dim standard as string = x.SubString(0,4) & "-" & x.SubString(4,2) & "-" & x.SubString(6,2) 'and time
Dim dateTime as DateTime = Convert.ToDateTime(standard) 

2 个答案:

答案 0 :(得分:9)

您可以使用DateTime.ParseExact

DateTime date = DateTime.ParseExact(x, "yyyyMMddHHmmss", CultureInfo.CurrentCulture);

VB

Dim myDate as DateTime = DateTime.ParseExact(x, "yyyyMMddHHmmss", CultureInfo.CurrentCulture)

答案 1 :(得分:1)

DateTime.ParseExact函数与输入字符串的确切格式结合使用。例如:

C#:

string input = "20110617111051";
string format = "yyyyMMddhhmmss";
DateTime dateTime = DateTime.ParseExact(input, format, CultureInfo.InvariantCulture);

VB:

Dim input As String = "20110617111051"
Dim format As String = "yyyyMMddhhmmss"
Dim dateTime as DateTime = DateTime.ParseExact(input, format, CultureInfo.CurrentCulture)

有关自定义日期和时间字符串的详细信息,请参阅this page