如果您事先知道正确的文化(例如,因为您知道创建该文件的用户),您可以尝试使用适当的CultureInfo或解析提供的值NumberFormatInfo:
Decimal value = Decimal.Parse(input, new CultureInfo("es-ES"));
Run Code Online (Sandbox Code Playgroud)
但是如果事先不知道类型,则必须通过检查字符来手动检查它,直到找到分隔符.(甚至那种方法也假设你保证总是有一个小数分隔符,这样one写的1.0不是1.)
您不能一个接一个地尝试每种预期的格式,因为您可能会得到误报.
10,000意味着有效但两种格式不同的东西.