はじめに
C#で小数を含んだ値を文字列にする場合、以下のように簡単に桁数を指定する事が出来ますが、
(※Unity上で動かしているので、ログの表示にDebug.Logを使っています。)
//てきとうな小数点を含んだ値 float value = 0.123456789f; //小数点を3桁目まで文字列化 Debug.Log(value.ToString($"F3")); //↓みたいな形でも可 //Debug.Log($"{value:F3}");
指定した桁数に足りない場合は自動で0が追加されてしまいます。
//てきとうな小数点を含んだ値 float value = 0.1f; //小数点を3桁目まで文字列化(1桁しかないので0が2つ足される) Debug.Log(value.ToString($"F3"));
桁数を揃えたい場合はこれで問題ないですが、意味のない0を表示したくない場合もあります。
そんな時はTrimEndを使うと簡単に右端の0を消す事が出来ます。
//てきとうな小数点を含んだ値 float value = 0.123456789f; //小数点を3桁目まで文字列化 Debug.Log(value.ToString($"F3")); //別のてきとうな小数点を含んだ値 value = 0.1f; //小数点を3桁目まで文字列化するが、右端の0は削除 Debug.Log(value.ToString($"F3").TrimEnd('0'));
余談ですが、逆に0を追加したい場合はPadLeftやPadRightが使えます。
参考