简体   繁体   中英

Decimal.TryParse doesn't parse my decimal value

When I tried to convert something like 0.1 (from user in textbox), My value b is always false.

bool b = Decimal.TryParse("0.1", out value);

How can it be here to work?

Specify the culture for the parsing. Your current culture uses some different number format, probably 0,1 .

This will successfully parse the string:

bool b = Decimal.TryParse("0.1", NumberStyles.Any, CultureInfo.InvariantCulture, out value);

在重载方法中使用Culture

Too late to the party, but I was going to suggest forcing the culuture to en-US but Invariant is a better sln

decimal value;
bool b = Decimal.TryParse("0.1", NumberStyles.Any, new CultureInfo("en-US"), out value);

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM