我想使用此代碼正確的邏輯:遷移從VBA到vb.net - 使用ISERROR
If Not IsError(Convert.ToDateTime(DatiBase(i).innertext.substring(DatiBase(i).innertext.indexof(":") + 1).trim(), New CultureInfo("it-IT"))) Then
MyString = "'" & Convert.ToDateTime(DatiBase(i).innertext.substring(DatiBase(i).innertext.indexof(":") + 1).trim(), New CultureInfo("it-IT")).ToString("yyyy-MM-dd") & "'"
Else
'Do something else
End If
我的目標是將值分配給「MyString的」只有「Convert.ToDateTime」給出一個有效的值,但代碼不會這樣做:當String未被識別爲有效的DateTime而不是執行「else」代碼時停止。
DateTime.TryParse,DateTime.TryParseExact。忘記舊的VBA/VB6代碼並使用庫 – Steve
@Steve我無法在'DateTime.TryParse方法(String,IFormatProvider,DateTimeStyles,DateTime)'和'DateTime.TryParse方法(String,DateTime)之間做正確的選擇。 '。我的日期字符串始終是意大利風格('日/月/年],但每次可能會非常不同('01/12/2014'或'1/12/14'或'01/12/14'或' 01/12/2014 10:30'等) – genespos
您應至少有一組可能的格式,然後將其用於轉換。我會用一些例子提供一個答案 – Steve