我正在使用vb
框架3.5开发asp.net
网站。
我在将字符串数据转换为日期时遇到了困难 我尝试使用cdate函数。
我有一个变量sdate,它是一个字符串变量,日期存储在其中,它来自文本框的dd/mm/yyyy,现在我想把这个字符串转换成一个日期变量,因为我需要执行加一天或减一天的操作。
请指导我如何去做。我在第三行得到的错误是:"字符串没有被识别为有效的日期时间"。我试着按以下方法操作,但错误出现了
Dim sdate As String
Dim expenddt As Date
expenddt = Date.Parse(edate)
expenddt = expenddt.AddDays(-1)
但我得到的错误是
从字符串到日期类型的转换是无效的。
我怎样才能从字符串中得到一个`日期'?
你应该使用Date.ParseExact
或Date.TryParseExact
与正确的格式字符串。
Dim edate = "10/12/2009"
Dim expenddt As Date = Date.ParseExact(edate, "dd/MM/yyyy",
System.Globalization.DateTimeFormatInfo.InvariantInfo)
或
Dim format() = {"dd/MM/yyyy", "d/M/yyyy", "dd-MM-yyyy"}
Dim expenddt As Date = Date.ParseExact(edate, format,
System.Globalization.DateTimeFormatInfo.InvariantInfo,
Globalization.DateTimeStyles.None)
或
Dim format() = {"dd/MM/yyyy", "d/M/yyyy", "dd-MM-yyyy"}
Dim expenddt As Date
Date.TryParseExact(edate, format,
System.Globalization.DateTimeFormatInfo.InvariantInfo,
Globalization.DateTimeStyles.None, expenddt)