C# で文字列を null 許容の int に解析したいと考えています。つまり、文字列の int 値を返すか、解析できない場合は null を返します。
これがうまくいくといいなと思っていた
int? val = stringVal as int?;
しかし、それではうまくいかないので、私が今やっている方法は、この拡張メソッドを書くことです
public static int? ParseNullableInt(this string value)
{
if (value == null || value.Trim() == string.Empty)
{
return null;
}
else
{
try
{
return int.Parse(value);
}
catch
{
return null;
}
}
}
これを行うより良い方法はありますか?
編集: TryParse の提案に感謝します。それについては知っていましたが、結果はほぼ同じでした。私がもっと知りたいのは、null 許容 int に直接解析する組み込みフレームワーク メソッドがあるかどうかです。
ベストアンサー1
int.TryParse
おそらく少しは簡単でしょう:
public static int? ToNullableInt(this string s)
{
int i;
if (int.TryParse(s, out i)) return i;
return null;
}
編集@Glennint.TryParse
は「フレームワークに組み込まれています」。これは、文字列を int に解析する方法ですint.Parse
。