C# : 複合書式設定の数値書式文字列を動的に生成する

<

p>めも。何かのお役に立てれば。


using System;

namespace FormatTest
{
    class Program
    {
        static void Main(string[] args) {
            double a = 1234.5678;
            Console.WriteLine(MakeFromatString(0,3), a);
            Console.Read();
        }

        /// 
        /// 複合書式設定の数値書式文字列を動的に作成する。
        /// 設定ファイル等の設定から小数点以下桁数を読み込み、それで書式化する場合に便利
        /// 
        /// パラメータ指定子。0から始まる。
        /// 小数点以下桁数
        /// 複合書式設定の文字列
        static string MakeFromatString(int index, int count) {
            string val = "{" + index.ToString() + ":#0";
            if (count > 0) {
                val = val + ".";
                for (int i = 0; i < count; i++) {
                    val = val + "0";
                }
            }
            val = val + "}";
            return val;
        }
    }
}

これの出力


12345.568

こういうのばっかり集めたクラスとかどっかにないかな。。。

コメントを残す