gpt4 book ai didi

.net - strings.formatnumber 限制为 15 个字符?

转载 作者:行者123 更新时间:2023-12-02 21:51:13 25 4
gpt4 key购买 nike

我们有一个使用函数Strings.formatnumber的.net Visual Basic项目,使用该函数是因为它的灵活性,即动态变量允许的小数位数。然而我遇到了一个讨厌的错误,这个函数似乎将所有内容四舍五入到 15 位

所以

?  Strings.FormatNumber("123456789012345.66", 2,Microsoft.VisualBasic.TriState.True,Microsoft.VisualBasic.TriState.False,Microsoft.VisualBasic.TriState.False)
Results 123456789012345.00

? Strings.FormatNumber("12345678901234.66", 2,Microsoft.VisualBasic.TriState.True,Microsoft.VisualBasic.TriState.False,Microsoft.VisualBasic.TriState.False)
Results 12345678901234.60

? Strings.FormatNumber("1234567890123.66", 2,Microsoft.VisualBasic.TriState.True,Microsoft.VisualBasic.TriState.False,Microsoft.VisualBasic.TriState.False)
Results 1234567890123.66

? Strings.FormatNumber("1234567890123456666.66", 2,Microsoft.VisualBasic.TriState.True,Microsoft.VisualBasic.TriState.False,Microsoft.VisualBasic.TriState.False)
Results 1234567890123460000.00

有两个问题

  • 为什么这个函数会这样做?
  • 是否有一个 .net 函数可以将字符串转换为数字并返回一个字符串,并且小数位数可以是动态的?

最佳答案

double被定义为具有 15-16 位精度。

您可能需要使用decimal相反,它提供 28 位数字。

添加了 decimal 的 VB.Net 链接和 double

关于.net - strings.formatnumber 限制为 15 个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18596149/

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