Dan*_*eny 13 .net c# globalization parsing cultureinfo
为什么:
decimal.Parse("1,2,3,45", CultureInfo.InvariantCulture)
Run Code Online (Sandbox Code Playgroud)
返回12345的小数,但是:
int.Parse("1,2,3,45", CultureInfo.InvariantCulture)
Run Code Online (Sandbox Code Playgroud)
抛出异常?我希望对于相同的文化,逗号的处理方式是相同的.如果decimal.Parse返回12345,为什么不int.Parse返回12345?
Mar*_*ell 17
NumberStylesint 的默认值是Integer:
整数表示使用AllowLeadingWhite,AllowTrailingWhite和AllowLeadingSign样式.这是一种复合数字样式.
比较Number(用于decimal):
Number表示使用AllowLeadingWhite,AllowTrailingWhite,AllowLeadingSign,AllowTrailingSign,AllowDecimalPoint和AllowThousands样式.这是一种复合数字样式.
如果你想要更多,请使用接受NumberStyles和提供的重载(例如)NumberStyles.Number或NumberStyles.Any:
int i = int.Parse("1,2,3,45", NumberStyles.Number, CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3309 次 |
| 最近记录: |