c# Bool变量总是false

本文关键字:false 变量 Bool | 更新日期: 2023-09-27 18:09:58

我正在比较两个字符串:

bool d = 
    (String.Equals(ethernetHeader.Source,staticForm.textBox1.Text.ToString()));

这个语句总是假的,即使在控制台中也是如此。

ethernetHeader。源= 00:25:64:4F: 21: D9

textBox1。文本= 00:25:64:4F: 21: D9

任何可能的原因??

谢谢,

c# Bool变量总是false

使用Trim,以便在字符串的开头或结尾没有空格。

Boolean d = ethernetHeader.Source.Trim() == staticForm.textBox1.Text.Trim();

使用StringComparison的重写

调用字符串比较方法时,如string。比较,字符串。等于或字符串。IndexOf,你应该总是调用重载它包含StringComparison类型的参数,以便您可以指定方法执行的比较类型。更多的信息,请参见.NET中使用字符串的最佳实践框架。

http://msdn.microsoft.com/en-us/library/system.stringcomparison (v = vs.110) . aspx

bool d = 
    (String.Equals(ethernetHeader.Source, staticForm.textBox1.Text.ToString(), StringComparison.OrdinalIgnoreCase));