草庐IT

valid_float

全部标签

c# - 为什么 float.parse 返回错误值?

我有一个问题。当我将像“0.005”这样的字符串解析为float或double时,它在我的电脑上运行良好,但当我将我的程序安装到我的客户端电脑时,它返回5。(我的电脑和我的客户端电脑都使用Windows7x64).这是我的例子publicfloatgetFloat(){floatmn=float.Parse("0.005");doublemn2=Convert.ToDouble("0.005");returnmn;} 最佳答案 这可能是系统文化设置的问题。试试这个:float.Parse("0.005",CultureInfo.In

c# - 验证错误 : The value 'on' is not valid for <<property name>>

在我的项目中,我有一个模型,您可以在这里看到我模型的一部分:publicclassCheckoutModel{publicboolOtherPlace{get;set;}[RequiredIf("OtherPlace",true,ErrorMessage="")]publicstringOtherPlaceFullName{get;set;}[RequiredIf("OtherPlace",true,ErrorMessage="")]publicintOtherPlaceProvinceId{get;set;}[RequiredIf("OtherPlace",true,ErrorMes

c# - float 中的E是什么?

什么是E+3?这里到底发生了什么?我们可以在其他数据类型中使用这种方法,还是只能在float中使用它?staticvoidMain(string[]args){doublew=1.7E+3;Console.WriteLine(w);}输出:1700 最佳答案 EnotationMostcalculatorsandmanycomputerprogramspresentverylargeandverysmallresultsinscientificnotation.Becausesuperscriptedexponentslike107

c# - 存在从 'float' 和 'float' 以及从 'float' 到 'float' 的隐式转换

这可能是我一段时间以来收到的最好的错误消息,我很好奇出了什么问题。原代码floatcurrElbowAngle=LeftArm?Elbow.transform.localRotation.eulerAngles.y:360f-Elbow.transform.localRotation.eulerAngles.y我正在使用Unity3d和C#;LeftArm是一个bool类型,根据documentationElbow.transform.localRotation.eulerAngles.y返回一个float值。这段代码给我错误:Thereexistsbothimplicitconver

c# - float 的乘法性能不一致

在.NET中测试float的性能时,我偶然发现了一个奇怪的情况:对于某些值,乘法似乎比正常情况慢得多。这是测试用例:usingSystem;usingSystem.Diagnostics;namespaceNumericPerfTestCSharp{classProgram{staticvoidMain(){Benchmark(()=>float32Multiply(0.1f),"\nfloat32Multiply(0.1f)");Benchmark(()=>float32Multiply(0.9f),"\nfloat32Multiply(0.9f)");Benchmark(()=>f

c# - 从 int 转换为 float 的问题

有一个我无法理解的奇怪行为。同意float是近似值,因此即使显然返回没有小数的数字的操作也可以近似为带小数的数字。我这样做:intnum=(int)(195.95F*100);因为这是一个浮点运算,所以我得到19594而不是19595..但这是正确的。让我困惑的是,如果我这样做floatflo=195.95F*100;intnum=(int)flo;我得到了19595的正确结果。知道为什么会这样吗? 最佳答案 我想看看这是不是编译器在做数学运算,但即使你强制它,它的行为也是这样的:staticvoidMain(){inti=(int

c# - 带有 "validateAllProperties"的 Validator.ValidateObject 在第一次错误时真正停止

我有一个自定义类(简单来说):usingSystem;usingSystem.ComponentModel.DataAnnotations;publicclassMyClass{[Required]publicstringTitle{get;set;}[Required]publicstringDescription{get;set;}}我想验证这个对象,并得到一个一切都不正确的异常。如果我这样做:voidValidate(){varobjectToValidate=newMyClass{};//Bothpropertiesarenullatthistimevarctx=newVali

c# - System.Drawing.Graphics.DrawString - "Parameter is not valid"异常

有时,Microsoft的异常消息毫无帮助,令人恼火。我创建了一个漂亮的小MVC方法来呈现文本。方法体如下。当它到达“DrawString”方法时,我得到一个异常抛出说“参数无效”。请注意,据我所知,字体构造正确(我只是使用10pt的Arial),矩形大小为正且看起来有效,画笔为白色SolidBrush,格式标志不影响输出;也就是说,如果我从调用中排除格式标志,我仍然会收到错误消息。DrawString调用就在底部附近。publicActionResultRenderText(stringfontFamily,floatpointSize,stringforeColor,stringb

c# - WinForms Validating 事件阻止 Escape 键关闭表单

我有一个简单的表单,只有一个文本框,外加确定和取消按钮。表单的AcceptButton和CancelButton设置正确,OK和Cancel按钮的DialogResult设置为“OK”和“Cancel”。我想向TextBox添加验证,这将防止用户在验证失败时确定表单,但也将允许他们像往常一样取消。CausesValidation属性在所有控件上默认为True,但我已将取消按钮上的此属性更改为False。果然,单击“确定”或按Enter键将运行我连接到TextBox的验证事件。按取消按钮绕过验证,这是完美的。但是,按Escape取消表单与按“取消”按钮不执行相同的操作-它会引发验证事件并

c# - C# 窗体程序中的 "Specified cast is not valid"错误

我遇到“指定的转换无效”错误。C#中的Windows窗体应用程序。我正在尝试从表中检索值。该值要么是smallint,要么是数字(我尝试了两个字段,都给我同样的错误),我尝试将它存储在一个int变量中。这是来源:using(SqlDataReaderrdr=cmd.ExecuteReader())//"select*fromtablewherefieldname="+value{while(rdr.Read()){intnumber=(int)rdr["quantity"];//errorishere 最佳答案 rdr["quant