本文介绍了是有使用'=='运算符和string.Equals()方法用于比较字符串任何全球化问题?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有没有使用 == 操作符和 string.Equals()方法比较上所有的全球化问题串?如果有什么解决方案,以避免这种情况?

Are there any globalization issues using '==' operator and string.Equals() method for comparing a string? If yes what is the solution to avoid this?

推荐答案

通过 String.Equals ,你可以使用的或 StringComparison。 InvariantCulture的,用 == ,你不能这样做。

With String.Equals, you can use StringComparison.InvariantCultureIgnoreCase or StringComparison.InvariantCulture, With == you can't do that.

您应该看到:的

code片段在同一篇文章:

Code Snippet from the same article:

using System;
using System.Globalization;
using System.Threading;
internal class Program
{
    private static void Main(string[] args)
    {      
        Thread.CurrentThread.CurrentCulture = new CultureInfo("tr-TR");
        const string input = "interesting";

        bool comparison = input.ToUpper() == "INTERESTING";

        Console.WriteLine("These things are equal: " + comparison);
        Console.ReadLine();
    }
}

以上将返回使用相等比较== 运营商

您可以尝试在code以下行上述

You may try the following line in the code above

 bool Comparison2 = input.Equals("INTERESTING",
                                  StringComparison.InvariantCultureIgnoreCase);

和结果将是

这篇关于是有使用'=='运算符和string.Equals()方法用于比较字符串任何全球化问题?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

11-02 04:09