gpt4 book ai didi

c# - String.Format 无法正常工作

转载 作者:太空宇宙 更新时间:2023-11-03 17:13:22 26 4
gpt4 key购买 nike

我有以下代码:

private string Do2Decimal(string value)
{
return String.Format("{0:0.##}", value);
}

这里我将字符串值作为 16.32222 传递。
我所知道的是,上面的代码应该将我的值格式化为 16.32。
但它显示输出值为 16.32222

我在这里犯了什么错误??

更新:我有以下字符串格式的值:“16.32222”。
抱歉之前忘了说。

最佳答案

因为您传递给它一个字符串值。格式适用于 float /小数。只需根据您的要求将数字解析为 decimal/double 类型,例如:

String.Format("{0:0.##}", decimal.Parse(value));

您还可以使用 decimal.TryParse (或 TryParse) 用于更安全解析的系列方法。您还可以修改您的方法以接收小数/ double 类型参数,然后应用格式。它会传达一个更好的意图,IMO。

如果您的字符串有 . 作为 NumberDecimalSeparator并且您的文化不支持 . 作为 NumberDecimalSeparator 那么您可以在解析时传递 CultureInfo.InvariantCulture,例如:

string value = "16.322222";
string formattedString = String.Format("{0:0.##}", decimal.Parse(value, CultureInfo.InvariantCulture));

关于c# - String.Format 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23344760/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com