Double-precision_floating-point_f
全部标签 我在字符串中有float。有一个问题。数字使用“。”不是“,”作为小数点。此代码无效:MyNumber=float.Parse("123.5");我知道我可以在解析之前使用字符串替换函数来“修复”这个字符串。MyNumber=float.Parse("123.5".Replace('.',',');但是还有其他方法吗? 最佳答案 使用字符串替换非常脆弱,会导致一些错误。改为指定IFormatProvider。例如:MyNumber=float.Parse("123.5",CultureInfo.InvariantCulture);或
根据下面的代码,我收到以下消息。我相当确定我得到它的“原因”,我只是不知道如何重新排列代码以移动/删除/替换导致错误的语句之一。“使用/main编译以指定包含入口点的类型。”"staticvoidMain(string[]args)"下有一堆代码,我从http://support.microsoft.com/kb/816112为了从自动递增中获取ID,所以当其余代码填充Access数据库时,我可以让它自动递增。任何帮助表示赞赏。也欢迎使用更简单的代码获得结果的建议!namespaceWindowsFormsApplication1{publicpartialclassForm1:For
假设我有一个double组,使用Akimainterpolation对这个系列进行采样的好算法是什么??我太笨了,无法将数学描述转化为代码。//valuesisanarrayofdoubles//idxistheindexoftheleft-handvalueforthecurrentinterpolation//tisthenormalizedparameterbetweenvalues[idx]andvalues[idx+1]//Don'tworryaboutarraybounds,I'llhandlethatseparately.publicdoubleInterpolateAk
我有值40880.051388并将其存储为double值,如果我打开Excel并粘贴到一个单元格中并将以下自定义格式“m/d/yyyyh:mm”应用到该值单元格,我得到"12/3/20111:14"如何在C#中执行此解析/转换?我不知道该值是否是某个检查点的毫秒数,例如纪元时间,或者该值是否采用某种特定的准备格式,但excel是如何得出这个特定值的?可以在C#中完成吗?我已经尝试在VisualStudio中使用TimeSpan、DateTime和其他类似的东西,但没有任何进展。 最佳答案 看起来您正在使用旧的OLEAutomatio
我正在尝试在WPF中制作一个只有数字的TextBox并且我有以下代码:voidNumericTextBox_PreviewTextInput(objectsender,TextCompositionEventArgse){e.Handled=!IsValidInput(e.Text);}privateboolIsValidInput(stringp){switch(this.Type){caseNumericTextBoxType.Float:returnRegex.Match(p,"^[0-9]*[.][0-9]*$").Success;caseNumericTextBoxType.
我有一个.CSV文件,我正在将其读入C#程序。在其中一列中,有一个日期,但它是“通用”格式,因此它在.CSV中显示为数字。例如:41172。如何在C#中将此数字转换为格式为dd/mm/yyyy的日期?41172相当于2012年9月20日。 最佳答案 要从“Excel格式”的日期时间转换为C#日期时间,您可以使用DateTime.FromOADate功能。在你上面的例子中:DateTimemyDate=DateTime.FromOADate(41172);要以所需格式写出显示,请使用:myDate.ToString("dd/MM/yy
我有一个使用点(".")作为小数点分隔符的源XML,我在使用逗号(",")作为小数点分隔符的系统上解析它。因此,值0.7被Double.TryParse或Double.Parse解析为7000000。正确解析的选项有哪些?其中之一是使用String.Replace('.',',')用逗号替换源中的点,但我认为我不太喜欢这个。 最佳答案 XML标准明确规定了日期和数字等格式。这有助于确保XML独立于平台且可互操作。看看使用XmlConvert用于xml数据。doublevalue=XmlConvert.ToDouble(stringV
如果对float进行排序,C#中的Array.Sort非常快,我需要一些额外的数据来处理这些float,所以我创建了一个简单的类并扩展了IComparable接口(interface)。现在Array.Sort突然慢了3-4倍,这是为什么?我该如何提高性能?演示代码:usingSystem;usingSystem.Diagnostics;usingSystem.Linq;namespaceSortTest{classProgram{staticvoidMain(string[]args){intarraySize=10000;intloops=500;doublenormalFloat
我有一个浮点值:12345.6489当我格式化时使用:(12345.6489f).ToString("F1")然后我得到一个结果12345.7但这是不正确的,因为它应该是12345.6。有谁知道为什么会发生这种情况?另一个提示是,在格式化之前转换为double会返回正确的结果,如果我的浮点值小一点,例如1234.6489,那么我也会得到正确的结果。 最佳答案 这好像和我前段时间问的一个问题有关:Round-twiceerrorin.NET'sDouble.ToStringmethod请注意,如果您对号码调用.ToString("G"
从JSON解析float时,如何让JSON.NET返回小数而不是double?(这是一个序列化的带有Dictionary的对象)。我已经尝试编写一个JsonConverter,但是CanConvert方法没有被调用为Double类型以尝试转换它。还有其他关于覆盖JsonTextReader的代码,但这在最新版本的Json.Net中似乎不可能。 最佳答案 在Json.NET5.0中,Newtonsoft.Json.JsonSerializerSettings类有新的属性FloatParseHandling,你可以设置这个属性值Newt