C# 格式浮点到字符串,带有分隔符和填充 0

本文关键字:分隔符 填充 格式 字符串 | 更新日期: 2023-09-27 18:37:25

我需要将整数和浮点数格式化为字符串。

如果它是浮点数,我需要,是小数分隔符。.必须是千位分隔符。

另外,我需要用0完成剩余的小数。一些例子:

float:
45,3: 000.045,30
125: 000.125,00
83560.195: 083.560,19
int:
45: 000.045
5789: 005.789

我设法用"{0:#,0}"格式化了数千个,但我仍然找不到如何格式化小数以及如何正确填充分隔符。

无论配置的区域性如何,都必须执行此操作:/

C# 格式浮点到字符串,带有分隔符和填充 0

这适用于给定的示例:

NumberFormatInfo numberFormat = new NumberFormatInfo
{
    NumberDecimalSeparator=",",
    NumberGroupSeparator="."
};
string formatFloat(float f)
{
    return f.ToString("0####,0.00",numberFormat);
}
string formatInt(int i)
{
    return i.ToString("0####,0",numberFormat);
}

您可以将区域性设置为欧洲区域性,并设置以下格式:

string.Format(new CultureInfo("de-DE"), "{0:000,000.00}", num).Dump();