C#のEnum.Parseメソッドで列挙型を解析する方法
C#のEnumクラスに用意されているParseメソッドを使用すると、列挙型定数の名前や数値の文字列表現を、それに対応する列挙型オブジェクトへ変換できます。文字列として受け取ったデータを列挙型として扱いたい場面で非常に便利なメソッドです。
列挙型の定義
ここでは、次のように車種を表す列挙型を定義します。
enum Vehicle { Car, Bus, Truck, Motobike };Enum.Parse()の使い方
まず、ループ処理の中でGetNames()メソッドを呼び出し、列挙型が持つすべての定数名を取得します。その後、取得した名前をEnum.Parse()メソッドに渡すことで、文字列を列挙型オブジェクトに変換します。
Enum.Parse(typeof(Vehicle), v)
第一引数には対象となる列挙型のType情報(typeof(Vehicle))を指定し、第二引数には変換したい文字列を渡します。
サンプルコード
using System;
public class Demo {
enum Vehicle { Car, Bus, Truck, Motobike };
public static void Main() {
Console.WriteLine("The enumeration...");
foreach (string v in Enum.GetNames(typeof(Vehicle))) {
Console.WriteLine("{0} = {1:D}", v, Enum.Parse(typeof(Vehicle), v));
}
Console.WriteLine();
}
}実行結果
The enumeration... Car = 0 Bus = 1 Truck = 2 Motobike = 3
注意点
Enum.Parse()は、存在しない定数名や不正な形式の文字列を渡した場合にArgumentExceptionまたはOverflowExceptionをスローします。ユーザー入力など信頼できない文字列を解析する場合は、例外をスローせずにnullを返してくれるEnum.TryParse()メソッドの利用を検討すると、より安全なコードになります。
-
JavaScriptのJSON.parse()メソッドとは?基本の使い方とサンプルコードを解説
JSON.parse()メソッドとはJSON.parse()メソッドは、JSON形式の文字列を解析(パース)し、そこからJavaScriptオブジェクトを生成するためのメソッドです。Web APIなどから受け取ったJSONデータをJavaScriptで扱える形に変換する際に、最もよく使われる手法の一つです。基本的な構文は以下の通りです。JSON.parse(text[, reviver])第1引数には解析対象のJSON文字列を指定し、省略可能な第2引数のreviver関数を使うと、変換後の値を加工することもできます。サンプルコード以下は、JSON.parse()メソッドを使ってJSON文字列を
-
C#のbool.Parseメソッドで文字列をbool型に変換する方法
C#では、文字列をbool型(真偽値)に変換する際に、bool.Parseメソッドを使用します。このメソッドは、「true」や「false」といった文字列を、プログラム内で扱える真偽値へと変換してくれます。基本的な使い方まず、変換元となる文字列を用意します。string str = true;次に、bool.Parseメソッドを使って文字列をbool型に変換します。bool res = bool.Parse(str);サンプルコード以下は、文字列をbool型に変換して結果をコンソールに出力する完全なコード例です。using System; using System.Linq; class D