- PR -

IsDate関数について

1
投稿者投稿内容
PG初心者
会議室デビュー日: 2005/06/30
投稿数: 8
投稿日時: 2005-07-06 18:55
VB.NETにあるIsDate関数をつかって以下のように日付かどうかの判断をしたいの
ですがうまいこといきません。
VB6では以下の様に時間まで記入しても日付と判断してくれたのですが、
VB.NETでは日付と判断せずにFalseで値が返ってきます。

日付かどうかを判断したいFormatは"1999-12-31 ##.##.######"です。

If IsDate("2000-01-01 00.00.000000") = True Then
  MsgBox ("AAA")
End If

なにかよい案があれば参考にしたいのですがお願いします。






じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-07-06 19:31
私は、Microsoft.VisualBasic 名前空間にある IsDate は使いません。
初回例外のコストが高すぎますから...

自作の IsDate メソッドを使うようにしています。
.NET Framework 2.0 から、System.DateTime.TryParse メソッドが加わるのを楽しみにしています。

[ メッセージ編集済み 編集者: じゃんぬねっと 編集日時 2006-08-18 09:24 ]
甕星
ぬし
会議室デビュー日: 2003/03/07
投稿数: 1185
お住まい・勤務地: 湖の見える丘の上
投稿日時: 2005-07-06 20:02
#ある意味IsDateで日付と判定できていた事の方がバグなんじゃないかと・・・

正規表現などを使って、自前のチェックルーチンを作ることをお勧めします。
_________________
甕星 <mikahosi@abox9.so-net.ne.jp>
http://blogs.msmvp.jp/mikahosi/
1

スキルアップ/キャリアアップ(JOB@IT)