如果减去日期是星期六或星期日,则在添加到arraylist之前减去更多天数
当我这样做时,日期保持不变并且不减去,我得到转换字符串以加倍错误
Dim aftersubtraction As Date
Dim fromatafter As Date
aftersubtraction = departuredate.AddDays(-dates1.Text)
fromatafter = aftersubtraction.AddDays(-gracep.Text)
If fromatafter.DayOfWeek = "Saturday" Then
fromatafter.AddDays(-1)
dates.Add(fromatafter.ToString("MM/dd/yyyy"))
ElseIf fromatafter.DayOfWeek = "Sunday" Then
fromatafter.AddDays(-2)
dates.Add(fromatafter.ToString("MM/dd/yyyy"))
Else
dates.Add(fromatafter.ToString("MM/dd/yyyy"))
End If
答案 0 :(得分:1)
While fromatafter.DayOfWeek = DayOfWeek.Saturday OrElse fromatafter.DayOfWeek = DayOfWeek.Sunday
fromatafter = fromatafter.AddDays(-1)
End While
dates.Add(fromatafter.ToString("MM/dd/yyyy"))
您必须将从AddDays返回的日期指定给您的变量。
答案 1 :(得分:0)
如果我没弄错,vb dayofweek函数返回一个整数而不是字符串。
'0 =星期天 '1 =星期一 '2 =星期二 '3 =星期三 '4 =星期四 '5 =星期五 '6 =星期六
因此出现错误信息。
你在
上得到字符串加倍错误与if语句一致...因为.dayofweek没有返回一个字符串...它返回一个整数...所以一个整数永远不会是=“星期六”或“星期日”......它会去等于0或1