小数の末尾のゼロを削除したい。精度 5 で DB からロードされます。
コンマ (,) が小数点であるカルチャを使用しています。
例えば:
- 10,00050 -> 10,0005
- 10,00000 -> 10
- 0,00000 -> 0
- 0,00001 -> 0,00001
一般 ("G") 書式指定子を使用できますが、科学的表記法はどの時点でも必要ありません。
BR、m。
カスタム数値フォーマット文字列を使用できます
decimal d = 12.45600m;
d.ToString("0.#####");
おそらくもっとエレガントな解決策がありますが、これは文字列で機能しました。
string[] decimals = {
"10,00050",// -> 10,0005
"10,00000",// -> 10
"0,00000",// -> 0
"0,00001",// -> 0,00001
};
foreach (string dec in decimals)
{
Console.WriteLine(" {0} -> {1}", dec, decimal.Parse(dec.TrimEnd(new char[] { '0' })));
}
「N」を試してください。数が1000以上の場合、カンマが追加されます。