插入 double 时遇到问题,例如 4.8(例如)(C#)[重复]

Posted

技术标签:

【中文标题】插入 double 时遇到问题,例如 4.8(例如)(C#)[重复]【英文标题】:Having trouble inserting double such as 4.8 (for example) (C#) [duplicate] 【发布时间】:2021-01-19 14:01:51 【问题描述】:

我在插入双精度时遇到了一些问题,例如:4.8。该程序不想阅读它。 正如您在屏幕截图中看到的那样。

【问题讨论】:

您好,请将您的代码作为文本添加到您的问题中。您可以使用edit 到edit 您的问题。 错误表示您的输入不被理解。你能告诉我们你输入了什么吗? 可能您的文化使用“,”作为小数,请参见:***.com/questions/28673269/… 即使在最简单的代码中也会引发错误: using System;命名空间 SoftUni 类程序 静态无效 Main(string[] args) 双收入 = double.Parse(Console.ReadLine()); Console.WriteLine(收入); 发现问题。它来自我的 Windows 上的区域设置。它被设置为使用“,”而不是“。”所以每次我使用“。”时,都会出现错误。 【参考方案1】:

问题可能出在您的文化背景上。可能预期的逗号而不是一个点。试试这个:

double income = double.Parse(Console.ReadLine(), NumberStyles.Any, CultureInfo.InvariantCulture);

【讨论】:

【参考方案2】:
double income;
// In case you need style and culture
style = NumberStyles.Number | NumberStyles.AllowCurrencySymbol;
culture = CultureInfo.CreateSpecificCulture("en-GB");
// Keep on reading until you make it
while(!double.TryParse(Console.ReadLine(), style, culture, out income));

【讨论】:

以上是关于插入 double 时遇到问题,例如 4.8(例如)(C#)[重复]的主要内容,如果未能解决你的问题,请参考以下文章

在字符串中插入反斜杠时遇到问题

将 reactjs 和 .net 4.8 后端部署到 iis 时遇到问题

在二进制堆中插入“双”变量时遇到问题

PHPUnit 4.8 Mock mysql 数据库接口

多线程问题与double-check

cmake中修改默认编译器的两个问题