1

C# では、コードはデフォルトの「US-Language」設定でConsole.WriteLine("{0:c}", 998);出力を提供します。$998しかし、ユーザーの好みに応じて通貨記号をポンド、スターリング、ルピー、または任意の通貨記号に動的に変更したい場合、これを行う方法はありますか? たとえば、メソッドを呼び出します。

public void PrintInRightCurrencyFormat(decimal value, ICustomFormatter format)
{
     Console.WriteLine( ... ... ... );
}

このメソッドは、必要な形式で値を出力します。

もう 1 つ、カスタム通貨記号を挿入する方法はありますか。私のポイントは、通貨に新しい記号が付属している場合 (インドがルピー記号で行ったように)、それをコードですぐに有効にする方法です。

よろしくお願いします。

4

1 に答える 1

4

文化を使用できます:

Console.WriteLine(string.Format(new CultureInfo("en-GB"), "{0:c}", value));

または、単に現在のスレッド カルチャをユーザー設定に設定してから、値を出力します。

Thread.CurrentThread.CurrentCulture = new CultureInfo("en-GB");
Console.WriteLine("{0:c}", value);
于 2011-04-30T06:45:53.930 に答える