整数がYYYYMMDD
の形式の場合、CDate(integer)
はなぜ機能しないのですか?整数がYYYYMMDDの形式のCDate(整数)が動作しないのはなぜですか?
、なぜこの愚かなサイトは、私が最後に
1> 2何とかなど、いくつかのワッフルを除いて追加する他には何もないとき私は
整数がYYYYMMDD
の形式の場合、CDate(integer)
はなぜ機能しないのですか?整数がYYYYMMDDの形式のCDate(整数)が動作しないのはなぜですか?
、なぜこの愚かなサイトは、私が最後に
1> 2何とかなど、いくつかのワッフルを除いて追加する他には何もないとき私は
整数がサポートされていないような短い質問を送信させません、MSDNごと:
値は 日付と時刻に変換できるかどうかを判断するために
IsDate
functionを使用してください。 CDateは日付リテラルと時間リテラルを認識しますが、数値ではない を認識します。
これはfalse
を返します。
Dim isValid = IsDate("20120314") ' false
ただし、文字列として有効な日付表記を使用することができます。例:
Dim result = CDate(DateTime.Now.ToString("yyyy-MM-dd"))
アーマード氏によると、また、あなたはあなたの特定の例ではTryParseExact機能を使用することができます...すべてTryParse
とTryParseExact
機能の
Dim Value As Integer = 20120314
Dim MyDate As DateTime
If DateTime.TryParseExact(Value.ToString(), "yyyyMMdd", CultureInfo.CurrentCulture, DateTimeStyles.None, MyDate) Then
'Do what you want with MyDate. For example...
Console.WriteLine(MyDate.ToShortDateString())
End If
美しさの部分は、彼らは単に解析が合格したか失敗したことを示すブール値を返します。彼らは例外をスローしません。