-3

我有两个看起来像这样的字符串:

字符串 a = "C:\Temp\1.png"

字符串 b = "C:\Temp\1.png"

当然,这些具有相同的含义。我正在寻找一种方法来知道他们是平等的。

意思是,类似于:

bool areEqual = false;    
if (a.CompareTo(b) == 0)
      areEqual = true;

对于上面的示例,areEqual将是true.

我怎样才能做到这一点?

4

4 回答 4

2

a == b应该做你想做的。内容(斜线与否)不应对比较产生任何影响。

于 2013-02-11T14:29:42.233 回答
2

使用此代码

string a = @"C:\xxx\1.png";
string b = @"C:\xxx\1.png";

bool blnEqule = a == b;
于 2013-02-11T14:31:33.713 回答
0

尝试a.Equals(b) == true或简单a == b无所谓。

如果您想定制使用路径的代码,另一种方法是使用FileInfo对象为您解析该路径并检查它们是否指向同一个文件。

于 2013-02-11T14:29:33.057 回答
0

实际上给出了上下文,OP想要的是以下内容

var a = "C:\\Temp\\1.png";
var b = "C:\\tEmP\\1.PNG";      
var isEquals = a.Equals(b, StringComparison.OrdinalIgnoreCase);
Console.WriteLine(isEquals);

假设这将在 Windows 系统上运行,NTFS 系统是不区分大小写的。

PS。下载 Linqpad 进行 C# 原型设计,将为您节省很多时间。

于 2013-02-11T16:03:04.747 回答