删除负整数上的千位分隔符

Remove Thousands Separator on Negative Integer

我想将带有千位分隔符的负数字符串转换为整数。
我之前 运行 这个代码:

int ans = int.Parse(txtInt, System.Globalization.NumberStyles.AllowThousands);

但它会为负数产生 运行 次错误。

关于如何获取具有负可能性的数字字符串的整数有什么想法吗?

您可以通过设置 AllowLeadingSign 标志来允许前导标志,如下所示:

int ans = int.Parse(txtInt, System.Globalization.NumberStyles.AllowThousands|System.Globalization.NumberStyles.AllowLeadingSign);

我觉得你需要用NumberStyles.AllowLeadingSign也喜欢;

int ans = int.Parse(txtInt, NumberStyles.AllowLeadingSign | NumberStyles.AllowThousands);

没有这个成员,你的字符串可以只有你当前的文化千位分隔符,数字除外。使用此成员,您还可以指定您的字符串可以具有您当前的文化负号或正号以及在前导位置。

当然,这只有在您使用 NegativeSign of your CurrentCulture 时才有效。