如何自定义打印双打的功能?我希望这个函数能够得到小数点后面的位数(我的语言环境中的逗号)作为一个agrument然后打印,例如pi,其中包含用户指定的逗号之后的位数。
答案 0 :(得分:5)
var digits = 4;
var myDouble = Math.PI;
var formattedValue = myDouble.ToString("N" + digits.ToString(),
CultureInfo.CurrentCulture);
答案 1 :(得分:2)
String.Format可能会帮助您使用NumberFormatInfo.NumberDecimalDigits属性。
MS的代码示例。
Public Shared Sub Main()
//' Gets a NumberFormatInfo associated with the en-US culture.
Dim nfi As NumberFormatInfo = New CultureInfo("en-US", False).NumberFormat
//' Displays a negative value with the default number of decimal digits (2).
Dim myInt As Int64 = - 1234
Console.WriteLine(myInt.ToString("N", nfi))
//' Displays the same value with four decimal digits.
nfi.NumberDecimalDigits = 4
Console.WriteLine(myInt.ToString("N", nfi))
End Sub
答案 2 :(得分:-1)
我在某种程度上告诉你,我在项目中解决了类似的问题。
将结果值转换为字符串。因为你使用像pi = 3,14
String Result = "3,14";
使用
Split(Char())//使用逗号将其拆分为数组
现在你将获得一个数组,数组[1]将为你提供第二部分。
由于它仍然是一个字符串,使用string.Length()
函数来获取长度,(只有逗号后面的位数除外)。
您现在可以按照您想要的方式打印结果数字