在 ASP.Net 控制器中将字符串转换为浮点数

Convert String to Float in ASP.Net Controller

在 Asp.Net C# MVC 控制器中,我想使用以下代码将字符串转换为浮点数:

string test1 = "7.8";
float test2 = float.Parse(test1);

test2 的结果是 78 而不是 7.8。我应该怎么做才能得到结果 7.8

试试下面的方法:

string test1 = "7.8";    
float test2 = Single.Parse(test1);

请阅读更多: https://docs.microsoft.com/en-us/dotnet/api/system.single.parse?view=netframework-4.7.2

正如 Sxntk 所说,您的设置可能需要 , 而不是“.”所以解决方案是将它解析为另一种文化,比如我们使用“。”的西班牙语。而不是“,”

float.Parse(test1,new CultureInfo("EN-ES"))

你还需要

using System.Globalization;

试试这个,你会得到 7,8

string test = "7.8";
float test2 = float.Parse(test, System.Globalization.CultureInfo.InvariantCulture);
Console.WriteLine(test2);

@Sxntk 在评论里对我说,

您的小数分隔符不是“.”它是一个“,” 那是您的本地环境设置。它应该适用于“7,8”