double型の多くのメンバーを含む一連のstructインスタンスを格納するプログラムがあります。時々私はこれらをファイルにダンプします、それは私が文字列ビルダーを使ってやっていた例です:
StringBuilder builder = new StringBuilder(256);
builder.AppendFormat("{0};{1};{2};", x.A.ToString(), x.B.ToString(), x.C.ToString());
ここで、「x」は私のタイプのインスタンスであり、A、B、CはタイプdoubleのXのメンバーです。ボクシングを避けるために、これらのそれぞれでToString()を呼び出します。ただし、これらのToStringの呼び出しは、アプリケーションのコンテキストでまだ多くのメモリを割り当てているため、これを減らしたいと思います。私が考えているのは、文字配列を作成し、各メンバーをその配列に直接書き込んでから、その文字配列から1つの文字列を作成し、それをファイルにダンプすることです。いくつかの質問:
1)私が考えていることは合理的に聞こえますか?誰かがすでに似たようなことを達成することを知っているものはありますか?
2)doubleを文字配列に変換するための何かがすでに組み込まれていますか(これは、ある程度のパラメータ化された精度までだと思いますか?)。理想的には、配列といくつかのインデックスを渡して、そこに書き込みを開始させたいと考えています。
私がこれを行おうとしている理由は、多くのインスタンスを実行していて、メモリによって制限されていることが多いため、アプリの実行中にメモリの大きなスパイクを減らすためです。
乾杯A