文字列処理

[C#] 文字列を数値型・真偽型へ変換する(Parse, TryParse)

数値型・真偽型への変換

文字列型を数値型・真偽型へ変換する

文字列型を数値型や真偽型へ変換するには、各クラスのParseメソッドを使用します。

// int型へ変換
int.Parse(文字列)

// long型へ変換
long.Parse(文字列)

// float型へ変換
float.Parse(文字列)

// double型へ変換
double.Parse(文字列)

// bool型へ変換
bool.Parse(文字列)

それではサンプルを見てみましょう。
Console.WriteLineを使って、Parseの動作をコンソールに出力します。

上記を実行した結果がこちらです。

実行結果

100
200
300.1
400.12
True

実行結果がコンソールに出力されました。
文字列がそれぞれの型に変換されているのがわかります。

 

変換可能かチェックしてから変換する

それぞれの型へ変換する際、変換できない想定外の値を引数として渡してしまった場合、例外となってしまいます。
それを防ぐには、変換前に変換可能かどうかのチェックを行う必要があります。
変換可否のチェックには、TryParseメソッドを使用します。

// int型へ変換可能か
int.TryParse(文字列, out int型変数)

// long型へ変換可能か
long.TryParse(文字列, out long型変数)

// float型へ変換可能か
float.TryParse(文字列, out float型変数)

// double型へ変換可能か
double.TryParse(文字列, out double型変数)

// bool型へ変換可能か
bool.TryParse(文字列, out bool型変数)

それではサンプルを見てみましょう。
Console.WriteLineを使って、TryParseの動作をコンソールに出力します。

上記を実行した結果がこちらです。

実行結果

True
False

実行結果がコンソールに出力されました。
文字列がそれぞれの型に変換できるかどうかがわかります。

この結果を使用し、以下のようにif文で判定することで、例外を防ぎ変換後の値を使用することが可能です。
なお、変換可能な場合はoutで指定した変数に変換後の値が入ります。

 
 
以上が、文字列型を数値型・真偽型へ変換するメソッド「Parse」と、変換できるかをチェックする「TryParse」の使い方です。
ぜひ参考にしてみてください。