C# 检查数字字符串中的小数位数

C# 检查数字字符串中的小数位数,c#,C#,这是一根绳子 String num = "10.65" 如果用户输入10.653,它应该告诉用户这最多只占两位小数。如何检查此字段?既然您提到了“用户输入”,我想这是屏幕上的一个字段。如果是,为什么不使用数字输入控件?这是web表单还是windows表单?既然您提到了“用户输入”,我想这是屏幕上的一个字段。如果是,为什么不使用数字输入控件?这是web表单还是windows表单?既然您提到了“用户输入”,我想这是屏幕上的一个字段。如果是,为什么不使用数字输入控件?这是web表单还是windows

这是一根绳子

String num = "10.65"

如果用户输入
10.653
,它应该告诉用户这最多只占两位小数。如何检查此字段?

既然您提到了“用户输入”,我想这是屏幕上的一个字段。如果是,为什么不使用数字输入控件?这是web表单还是windows表单?

既然您提到了“用户输入”,我想这是屏幕上的一个字段。如果是,为什么不使用数字输入控件?这是web表单还是windows表单?

既然您提到了“用户输入”,我想这是屏幕上的一个字段。如果是,为什么不使用数字输入控件?这是web表单还是windows表单?

既然您提到了“用户输入”,我想这是屏幕上的一个字段。如果是,为什么不使用数字输入控件?这是web表单还是windows表单?

如果四舍五入到小数点后2位的解析值发生变化,您可以检查:

var input = "10.625";

double value;
if(!double.TryParse(input, out value) || Math.Round(value, 2) != value)
{
    Console.WriteLine("Wrong input");
}

如果四舍五入到小数点后2位的解析值发生更改,则可以检查:

var input = "10.625";

double value;
if(!double.TryParse(input, out value) || Math.Round(value, 2) != value)
{
    Console.WriteLine("Wrong input");
}

如果四舍五入到小数点后2位的解析值发生更改,则可以检查:

var input = "10.625";

double value;
if(!double.TryParse(input, out value) || Math.Round(value, 2) != value)
{
    Console.WriteLine("Wrong input");
}

如果四舍五入到小数点后2位的解析值发生更改,则可以检查:

var input = "10.625";

double value;
if(!double.TryParse(input, out value) || Math.Round(value, 2) != value)
{
    Console.WriteLine("Wrong input");
}


您可以在长度为2或不为2的点后检查字符串的长度。使用任何有助于输入特定格式的掩码编辑器。例如,您也可以使用正则表达式验证输入。@raymond您应该阅读您可以在长度为2或不为2的点后检查字符串的长度。使用任何有助于输入的掩码编辑器特定格式示例您也可以使用正则表达式验证输入。@raymond您应该阅读您可以在长度为2或不为2的点之后检查字符串的长度。使用任何有助于输入特定格式示例的掩码编辑器,您也可以使用正则表达式验证输入。@raymond您应该阅读您可以检查字符串在长度是否为2后的长度。请使用任何有助于输入特定格式的掩码编辑器。例如,您也可以使用正则表达式验证输入。@raymond您应该阅读,感谢您共享此代码段。它工作正常,但当字符串为132898.781格式时,则为Math。舍入将字符串更改为132898.78,因此此时上述代码失败。@user3064724这符合您的要求:“
如果用户输入10.653,则应告诉用户该值最多只需两位小数。
”@用户3064724这正是您所要求的<代码>13289.7899的小数位数超过2位,这就是我的代码打印“错误输入”的原因。感谢分享此代码片段。它工作正常,但当字符串为132898.781格式时,则为Math。舍入将字符串更改为132898.78,因此此时上述代码失败。@user3064724这符合您的要求:“
如果用户输入10.653,则应告诉用户该值最多只需两位小数。
”@用户3064724这正是您所要求的<代码>13289.7899的小数位数超过2位,这就是我的代码打印“错误输入”的原因。感谢分享此代码片段。它工作正常,但当字符串为132898.781格式时,则为Math。舍入将字符串更改为132898.78,因此此时上述代码失败。@user3064724这符合您的要求:“
如果用户输入10.653,则应告诉用户该值最多只需两位小数。
”@用户3064724这正是您所要求的<代码>13289.7899的小数位数超过2位,这就是我的代码打印“错误输入”的原因。感谢分享此代码片段。它工作正常,但当字符串为132898.781格式时,则为Math。舍入将字符串更改为132898.78,因此此时上述代码失败。@user3064724这符合您的要求:“
如果用户输入10.653,则应告诉用户该值最多只需两位小数。
”@用户3064724这正是您所要求的<代码>13289.7899的小数位数超过2位,这就是我的代码打印“错误输入”的原因。