将float转换为字符串.代替 ,

Las*_*eed 1 c#

"如何将float转换为只有一个小数的字符串"

这个问题已被多次询问,通常的答案是MyFloat.ToString("0.0")或类似的.但是,我面临的问题是

float f = 1;
string s = f.ToString("0.0");
MessageBox.Show(s);
Run Code Online (Sandbox Code Playgroud)

输出,1,0但我需要的是1.0.我当然可以在之后手动用点替换逗号,但我很确定这不是正确的方法.我无法在互联网上找到解决方案,因为无论1.0 在哪里,它都说已经输出了怎么样?

Sel*_*enç 5

你可以用InvariantCultureToString:

string s = f.ToString("0.0", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)

小数分隔符取决于文化,但InvariantCulture使用的.是您想要的.