C#のChar.TryParse()メソッドとは?構文と使い方を実例で解説
C#のChar.TryParse()メソッドは、指定された文字列の値を、それと等価なUnicode文字(char型)へ変換するためのメソッドです。変換の成否をbool値として返すため、例外をスローせずに安全な文字変換処理を行いたい場面で活用できます。
構文
public static bool TryParse (string str, out char res);
このメソッドは次の2つの引数を受け取ります。
- str:変換対象となる文字列
- res:変換結果を受け取るoutパラメータ(char型)
変換に成功すればtrueを返し、失敗すればfalseを返します。失敗した場合、outパラメータにはデフォルト値が格納される点にも注意してください。
使用例1:変換に失敗するケース
using System;
public class Demo {
public static void Main(){
bool res;
Char ch;
res = Char.TryParse("10", out ch);
Console.WriteLine(res);
Console.WriteLine(ch.ToString());
}
}出力
False
この例では「10」という文字列を渡していますが、char型は1文字のみを表す型であるため、「10」のような複数文字からなる文字列は変換できません。その結果、TryParse()はfalseを返します。
使用例2:変換に成功するケース
using System;
public class Demo {
public static void Main(){
bool res;
Char ch;
res = Char.TryParse("P", out ch);
Console.WriteLine(res);
Console.WriteLine(ch.ToString());
}
}出力
True P
今度は「P」という単一の文字を渡しているため、変換は正常に行われ、TryParse()はtrueを返します。outパラメータには変換後の文字「P」が格納され、コンソールに出力されています。
まとめ
- Char.TryParse()は文字列をchar型(Unicode文字)に安全に変換できる
- 変換対象は必ず1文字だけの文字列である必要がある
- 戻り値がbool型なので、if文などで成否を判定してから処理を分岐できる
数値への変換に使うint.TryParse()やdouble.TryParse()と同じ考え方で使えるため、ユーザー入力の検証などでも役立つメソッドです。
-
C#の列挙型Enum.TryParse()メソッドの使い方を解説
概要C#のEnum.TryParse()メソッドは、1つ以上の列挙定数に対応する文字列表現を、等価な列挙オブジェクトへと変換します。通常のParse()メソッドと異なり、変換に失敗しても例外がスローされず、戻り値(bool型)で成功・失敗を判定できるため、安全な文字列変換処理に適しています。列挙型の定義まず、サンプルで使用する列挙型を定義します。enum Vehicle { Bus = 2, Truck = 4, Car = 10 };文字列配列の準備次に、変換対象となる文字列の配列を宣言し、数値や名前などさまざまな形式の値を設定します。string[] VehicleList = { 2,
-
C#のint.TryParseメソッドとは?文字列を整数に安全に変換する方法
int.TryParseメソッドの概要 C#では、int.TryParseメソッドを使うことで、数値を表す文字列を整数(int型)に変換できます。このメソッドの最大の特徴は、変換に失敗した場合でも例外をスローせず、単にfalseというブール値を返す点です。そのため、ユーザー入力など不確実なデータを扱う際に非常に便利です。 基本的な使い方 まず、数値を表す文字列があるとします。 string myStr = 12; この文字列を整数に変換するには、int.TryParse()を使用します。変換が成功すれば、結果はtrueとして返されます。 int.TryParse(myStr, out a);