C#
 Computer >> コンピューター >  >> プログラミング >> C#

【C#入門】Boolean.ToString(IFormatProvider)メソッドの使い方を徹底解説

C#のBoolean.ToString(IFormatProvider)メソッドは、Boolean値(true / false)を等価な文字列表現に変換するためのメソッドです。引数には、カルチャ固有の書式情報を提供するIFormatProviderオブジェクトを指定します。

構文

このメソッドの構文は以下のとおりです。

public string ToString (IFormatProvider provider);

パラメータ provider には、書式情報を提供する IFormatProvider オブジェクト(例:CultureInfo)を渡します。

使用例①:en-USカルチャを指定した場合

まずは、カルチャとして「en-US」を指定した基本的な例を見てみましょう。

using System;
using System.Globalization;
public class Demo {
   public static void Main(String[] args) {
      bool val1 = true;
      bool val2 = false;
      Console.WriteLine("Value1 (Hashcode) = "+val1.GetHashCode());
      Console.WriteLine("Value1 (TypeCode) = "+val1.GetTypeCode());
      Console.WriteLine("Value2 (Hashcode) = "+val2.GetHashCode());
      Console.WriteLine("Value2 (TypeCode) = "+val2.GetTypeCode());
      CultureInfo provider = new CultureInfo("en-us");
      Console.WriteLine("Value1 = "+val1.ToString(provider));
      Console.WriteLine("Value2 = "+val2.ToString(provider));
   }
}

実行結果

上記のコードを実行すると、次のような出力が得られます。

Value1 (Hashcode) = 1
Value1 (TypeCode) = Boolean
Value2 (Hashcode) = 0
Value2 (TypeCode) = Boolean
Value1 = True
Value2 = False

使用例②:fr-FRカルチャを指定した場合

続いて、カルチャを「fr-FR(フランス語)」に変更した場合の例です。

using System;
using System.Globalization;
public class Demo {
   public static void Main(String[] args) {
      bool val1 = true;
      bool val2 = false;
      Console.WriteLine("Value1 (Hashcode) = "+val1.GetHashCode());
      Console.WriteLine("Value1 (TypeCode) = "+val1.GetTypeCode());
      Console.WriteLine("Value2 (Hashcode) = "+val2.GetHashCode());
      Console.WriteLine("Value2 (TypeCode) = "+val2.GetTypeCode());
      // カルチャを変更
      CultureInfo provider = new CultureInfo("fr-FR");
      Console.WriteLine("Value1 = "+val1.ToString(provider));
      Console.WriteLine("Value2 = "+val2.ToString(provider));
   }
}

実行結果

上記のコードを実行すると、次のような出力が得られます。

Value1 (Hashcode) = 1
Value1 (TypeCode) = Boolean
Value2 (Hashcode) = 0
Value2 (TypeCode) = Boolean
Value1 = True
Value2 = False

ポイント解説

注目すべきは、カルチャを「en-US」から「fr-FR」に変更しても、出力結果が変わらないという点です。Boolean型の場合、ToString(IFormatProvider)メソッドにどのカルチャを渡しても、戻り値は常に「True」または「False」になります。これは、Boolean値の文字列変換がカルチャに依存しない仕様になっているためです。IFormatProvider引数は他の数値型や日付型との一貫性のために用意されていますが、Boolean型では実質的に結果に影響しません。

  1. C#のConsole.SetBufferSize()メソッドの使い方を徹底解説

    C#におけるConsole.SetBufferSize()メソッドは、コンソール画面のバッファ領域(スクリーンバッファ)の幅と高さを指定した値に設定するために使用されるメソッドです。コンソールアプリケーションで表示領域をカスタマイズしたい場合に活用できます。構文Console.SetBufferSize()メソッドの構文は以下の通りです。public static void SetBufferSize (int width, int height);各パラメータの意味は次のようになっています。width: バッファ領域の幅(列数)を指定します。height: バッファ領域の高さ(行数)を指定し

  2. C#のConsole.ResetColor()メソッドの使い方を解説

    概要C#のConsole.ResetColor()メソッドは、コンソールの前景色(文字色)と背景色を、既定の配色に戻すために使用されます。プログラム内で一時的に文字色や背景色を変更した後、元の状態へ復元したい場合に非常に便利です。構文ResetColor()メソッドの構文は以下のとおりです。public static void ResetColor ();このメソッドは引数を受け取らず、戻り値もありません。また、staticメソッドであるため、インスタンスを生成することなく、Consoleクラスから直接呼び出すことができます。使用例それでは、C#でConsole.ResetColor()メソッ