我有两个看起来像这样的字符串:
字符串 a = "C:\Temp\1.png"
字符串 b = "C:\Temp\1.png"
当然,这些具有相同的含义。我正在寻找一种方法来知道他们是平等的。
意思是,类似于:
bool areEqual = false;
if (a.CompareTo(b) == 0)
areEqual = true;
对于上面的示例,areEqual
将是true
.
我怎样才能做到这一点?
我有两个看起来像这样的字符串:
字符串 a = "C:\Temp\1.png"
字符串 b = "C:\Temp\1.png"
当然,这些具有相同的含义。我正在寻找一种方法来知道他们是平等的。
意思是,类似于:
bool areEqual = false;
if (a.CompareTo(b) == 0)
areEqual = true;
对于上面的示例,areEqual
将是true
.
我怎样才能做到这一点?
a == b
应该做你想做的。内容(斜线与否)不应对比较产生任何影响。
使用此代码
string a = @"C:\xxx\1.png";
string b = @"C:\xxx\1.png";
bool blnEqule = a == b;
尝试a.Equals(b) == true
或简单a == b
无所谓。
如果您想定制使用路径的代码,另一种方法是使用FileInfo
对象为您解析该路径并检查它们是否指向同一个文件。
实际上给出了上下文,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# 原型设计,将为您节省很多时间。