概要
本記事では、文字列⇒数値または、数値⇒文字列へ変換する方法を紹介します。
また、10進文字列と16進文字列の扱いについて説明します。
- 文字列⇒数値
- 数値⇒文字列
文字列⇒数値
Purseメソッド
10進数文字列⇒数値
string str1 = "10";
int num1 = int.Parse(str1);
Console.WriteLine($"{str1} -> {num1}");
実行結果
10 -> 10
16進数文字列⇒数値
string str1 = "A";
int num1 = int.Parse(str1, System.Globalization.NumberStyles.HexNumber);
Console.WriteLine($"{str1} -> {num1}");
実行結果
A -> 10
注意点
変換失敗時は例外が発生するため、例外を補足する必要があります。
例外を発生させたくない場合は、TryPurseメソッドを使用します。
TryPurseメソッド
10進数文字列⇒数値
string str1 = "10";
int num1 = 0;
if (Int32.TryParse(str1, out num1))
{
Console.WriteLine($"{str1} -> {num1}");
}
else
{
Console.WriteLine($"error: {str1}");
}
実行結果
10 -> 10
16進数文字列⇒数値
string str1 = "A";
int num1 = -1;
if (Int32.TryParse(str1, System.Globalization.NumberStyles.HexNumber, null, out num1))
{
Console.WriteLine($"{str1} -> {num1}");
}
else
{
Console.WriteLine($"error: {str1}");
}
実行結果
A -> 10
Convertクラス
10進数文字列⇒数値
string str1 = "10";
int num1 = Convert.ToInt32(str1);
Console.WriteLine($"{str1} -> {num1}");
実行結果
10 -> 10
16進数文字列⇒数値
string str1 = "A";
int num1 = Convert.ToInt32(str1, 16);
Console.WriteLine($"{str1} -> {num1}");
実行結果
A -> 10
数値⇒文字列
ToStringメソッド
数値⇒10進数文字列
int num1 = 10;
string str1 = num1.ToString();
Console.WriteLine($"{str1}");
実行結果
10
数値⇒16進数文字列
int num1 = 10;
string str1 = num1.ToString("X");
Console.WriteLine($"{str1}");
実行結果
A
Convertクラス
数値⇒10進数文字列
int num1 = 10;
string str1 = Convert.ToString(num1);
Console.WriteLine($"{str1}");
実行結果
10
数値⇒16進数文字列
int num1 = 10;
string str1 = Convert.ToString(num1, 16);
Console.WriteLine($"{str1}");
実行結果
a