目次
概要
C#で文字列を数値に変換するには、数値型(int、long、doubleなど)にあるParse
またはTryParse
メソッドや、System.Convert
クラスのメソッドを使用します。
Parseメソッド
Parseメソッドは、変換に失敗した時に、FormatException
がスローされますので、try-catchで例外を捕捉する必要があります。
int result = int.Parse(<変換する文字列>);
例
string s = "10"; try { int result = int.Parse(s); Console.WriteLine($"結果 {i}"); } catch(FormatException e) { Console.WriteLine($"エラー {e.Message}"); }
- 文字列の先頭と末尾の空白文字は、無視されるみたいです。
TryParseメソッド
TryParseメソッドは、変換に失敗した時は例外をスローするのではなく、単純に戻り値でfalse
を返却します。
変換した結果の受け取りは、第2引数にOUTパラメータで指定して受け取ります。
bool result = int.TryParse(<変換する文字列>, out <変換結果>);
例
string s = "10"; int i = -1; bool result = int.TryParse(s, out i); Console.WriteLine($"結果: {i}, 変換成功:{result}");
- 文字列の先頭と末尾の空白文字は、無視されるみたいです。
Convertメソッド
Convertクラスの各変換メソッドを利用することもできます。
int result = Convert.ToInt32(<変換する文字列>);