VB.netで日付を文字列に変更する時、下記のようにしますよね。
Dim dt_now As DateTime
dt_now = DateTime.Now
Dim str_date As String
str_date = dt_now.ToString("yyyy/MM/dd")
でもこれで、変な文字列になった事ありませんか?
日時.ToStringってやつは、デフォルトでOSに設定された日時フォーマットが使用されます。
もし、OSでカレンダーを和暦表示なんかにされていると、上記のように”yyyy/MM/dd”を取得しても、変な値になります。
それを避けるため、VB.netでスレッドを立てたら、呪文のように下記を実行しましょう。
' カルチャの指定
Threading.Thread.CurrentThread.CurrentCulture = New Globalization.CultureInfo("ja-JP", False)
これでOSで和暦に設定されていても問題なくなります。
good!!!