コードに渡されたさまざまなフォーマット記述子を使用して小数をフォーマットする必要があります。これは、小数点の左側にあるさまざまな有効桁数を指定します。ToString 出力は、形式記述子ごとに左側に多すぎる桁数を含めることはできません。そうしないと、エラー (形式オーバーフロー) が返されます。
ToString 10 進形式記述子 (何も見つかりませんでした) または他の 10 進数から文字列への変換メカニズムはありますか? 以下のコードのようなものを動作させるのではなくスローしたいと思います。フォーマット記述子の文字数を数え、その最大小数点を自分で調べ、変換を試みる前に比較するよりも、よりエレガント/組み込みの何かを望んでいます。ありがとう!
static void Main(string[] args)
{
string lFormat = null;
decimal lValue = 123456.5678m;
// For example, I would like something like this to throw because the number would not fit into 3 significant left side digits...
lFormat = "000.00";
Console.WriteLine("Format '{0}' value '{1}'.", lFormat, lValue.ToString(lFormat));
Console.WriteLine("Hit Enter to exit...");
Console.ReadLine();
}