c# - 转换具有句点而不是逗号的 float ?

标签 c# .net .net-2.0

我有来自数据库(字符串)表的数据,其中包含文本和价格。我从数据中提取价格,但我的问题是有时我可以将其转换为 float 价格,有时则不能。

我注意到了:

Convert.ToSingle(m.Groups[1].Value);

它有效,但并不总是有效,因为有时句号是问题所在(它需要一个逗号)。我能做什么?我尝试将“.”替换为“,”,但有时在其他 PC 上需要使用句号!

最佳答案

您遇到此问题是因为转换会检查您 PC 的语言。您将需要执行以下操作:

Convert.ToSingle(m.Groups[1].Value, CultureInfo.InvariantCulture.NumberFormat);

这样,它就不会检查 PC 的语言。您可以找到有关 InvariantCulture 的更多信息来自MSDN。我在一个项目中有类似的东西并且我的转换有效。

关于c# - 转换具有句点而不是逗号的 float ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/359298/

相关文章:

c# - SQL查询中如何设置表名

c# - 确定累积点的起点

c# - C# 和 .NET 3.5 中的图像大小调整效率

c# - 如何在 C# 中的单个 SQL 查询中更新水果列表的 crate ID

c# - 无法在 Windows XP Embedded 上启动以 .NET 2.0 编写的服务

C# - 业务层事务的使用(SQLServer 2005+,Oracle) - 很好的例子

.net - 动态创建 ASP.NET 报表查看器 Web 控件时出现问题

.net - 如何在 WinForms 中设置面板的不透明度或透明度?

c# - 如何将 DateTimePicker 设置为只读?

c# - 使用 Entity Framework 调用存储过程并从 WCF 安全返回的更好方法?