- PR -

型変換できるかどうかの確認

投稿者投稿内容
ビジネスモール開発者
常連さん
会議室デビュー日: 2005/03/17
投稿数: 25
投稿日時: 2005-04-07 19:29
簡単な質問ですいません。過去ログをみても見つけられませんでした。

stringをIntegerに変換したいのですが、
変換できるかどうかの確認はどうしたら良いのでしょうか?

if 変換できるなら then
 Integerに変換
Else
 違う処理
End IF

のようにしたいです。
Try Catchでとりあえず変換してみて無理だったら
エラーとして受け取るという方法もあると思いますが、
それはちょっと不細工なので、他の方法を探しています。
まゆりん
ぬし
会議室デビュー日: 2002/08/12
投稿数: 539
お住まい・勤務地: よこはま
投稿日時: 2005-04-07 19:53
これのこと?

過去ログだけじゃなく、MSDNも見ないと。
_________________
まゆりん @ わんくま同盟
Blog る。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2005-04-07 19:55
型変換できるか、であるなら、TypeOf
_________________
Hongliang
ぬし
会議室デビュー日: 2004/12/25
投稿数: 576
投稿日時: 2005-04-07 20:04
Try-Catchをすべきだと思いますが。
IsNumericを使ったところで、-2147483648〜2147483647を超えていたり小数点が含まれた文字列だったりしたら変換時に例外が投げられますし。
.NET 2.0にはTryParseメソッドが存在しますが。
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2005-04-07 20:06
syodanmallerさん、こんばんは。

System.ComponentModel.TypeConverter 派生クラス(例えば System.ComponentModel.Int32Converter クラス)の IsValid メソッドとかはどうでしょう。
ビジネスモール開発者
常連さん
会議室デビュー日: 2005/03/17
投稿数: 25
投稿日時: 2005-04-07 20:20
>型変換できるか、であるなら、TypeOf

これです。
MSDNも探したのですが、
「型変換」とか「キャスト」
というキーワードで探しても、見つけられず困っていました。

助かりました。ありがとうございました。

ビジネスモール開発者
常連さん
会議室デビュー日: 2005/03/17
投稿数: 25
投稿日時: 2005-04-07 20:38
追記です。

IsNumeric("100")
はtrueですが、
TypeOf "100" is Integer
はFalseでした。

今回の場合は、IsNumericが良いようです。
NAL-6295
ぬし
会議室デビュー日: 2003/01/26
投稿数: 966
お住まい・勤務地: 東京
投稿日時: 2005-04-07 22:03
C#だったらAs演算子が使えるかと・・・

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