Ben*_*Ben 4 c# parsing decimal
如果我执行以下操作:
string teststring = "12,2,2,2";
decimal testdecimal;
decimal.TryParse(teststring, out testdecimal)
Run Code Online (Sandbox Code Playgroud)
这工作,testdecimal最终成为12222.
这不合理/逻辑上不能解析吗?我很惊讶地看到它有效并且很好奇它背后的逻辑是什么允许这个.
默认情况下,TryParse()允许,您所在国家/地区的组分隔符.
为防止这种情况,请传递NumberStyles不包含的内容NumberStyles.AllowThousands.
默认为:
Number = AllowLeadingWhite | AllowTrailingWhite | AllowLeadingSign | AllowTrailingSign |
AllowDecimalPoint | AllowThousands,
Run Code Online (Sandbox Code Playgroud)