我有一个日文数字和英文数字。
example:
In japanese language six=6
In english language six=6
所以当我比较这个值时它返回 false 我使用了 CompareTo() 但它不返回 0
如何匹配这个值????
您可以使用Normalize(NormalizationForm.FormKC)
将国际数字减少为其英语/阿拉伯语等值。
"6".Normalize(NormalizationForm.FormKC); // returns "6"
"6".Normalize(NormalizationForm.FormKC); // also returns "6"
您可以将比较提取到一个方法中:
static bool IsEqualAfterNormalizingKC(string s1, string s2) {
if (s1 == null && s2 == null) return true;
if (s1 == null || s2 == null) return false;
return s1.Normalize(NormalizationForm.FormKC) == s2.Normalize(NormalizationForm.FormKC);
}
IsEqualAfterNormalizingKC("6", "6"); // true
int
使用 .NET 的一种常见解析方法将字符串解析为整数 ( )。然后,比较两个整数。
数据比较/解释应该在本机表示上执行,在这种情况下是一个int
.