1

我有一个日文数字和英文数字。

example:
In japanese language six=6
In english language six=6

所以当我比较这个值时它返回 false 我使用了 CompareTo() 但它不返回 0

如何匹配这个值????

4

2 回答 2

6

您可以使用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
于 2013-08-24T12:32:48.473 回答
0

int使用 .NET 的一种常见解析方法将字符串解析为整数 ( )。然后,比较两个整数。

数据比较/解释应该在本机表示上执行,在这种情况下是一个int.

于 2013-08-24T12:16:28.863 回答