CDateとparseExactが、2012年3月10日として表される今日の日付(10月3日)を2012年10月3日に変更するのはなぜですか?私はWindows7、VS2012を使用しています。コントロールパネルの設定はすべてUK/GBです。行を追加してみました
System.Threading.Thread.CurrentThread.CurrentCulture = New System.Globalization.CultureInfo("en-GB", True)
System.Threading.Thread.CurrentThread.CurrentUICulture = New System.Globalization.CultureInfo("en-GB", True)
効果はありません。
これが私のコードです-私が望む日付を取得するために、テキストバージョンの日と月を交換することに頼らなければならないことがわかります
dim txtDate As String = "03/10/2012"
Dim strOriginalDate As String = txtDate ' 03/10/2012
Dim dtmdate1 As Date = CDate(txtDate) ' #10/03/2012#
Dim dtmdate2 As Date = DateTime.ParseExact(txtDate, "dd/MM/yyyy", Nothing) ' #10/03/2012#
txtDate = Split(txtDate, "/")(1) & "/" & Split(txtDate, "/")(0) & "/" & Split(txtDate, "/")(2)
Dim dtmdate3 As Date = CDate(txtDate) ' #3/10/2012#