C#:如何为Double.Parse显式设置文化(字符串num)

Nik*_*ike 1 c# culture parsing

我下载了一个读取文件的程序,然后将双精度值从String解析为Double.但是我得到一个例外,因为这个文件包含带有'.'的数字.分隔符,但在我的文化中有','.如何明确设置文化?

Joã*_*elo 9

您将使用Parse接受的重载IformatProvider.

Double.Parse("23.56", new CultureInfo("..."))
Run Code Online (Sandbox Code Playgroud)

如果您不知道用于编写文件的文化,请创建NumberFormatInfo并根据需要对其进行配置:

var nfi = new NumberFormatInfo();

nfi.NumberDecimalSeparator = ".";

var d = Double.Parse("23.56", nfi);
Run Code Online (Sandbox Code Playgroud)