簡體   English   中英

C#Bool變量始終為false

[英]C# Bool Variable always false

我正在比較兩個字符串:

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

即使在控制台中都與以下相同,此語句也始終為false。

ethernetHeader.Source = 00:25:64:4F:21:D9

textBox1.Text = 00:25:64:4F:21:D9

任何可能的原因?

謝謝,

使用Trim以便在字符串的開頭或結尾沒有空格。

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

對StringComparison使用替代。

當您調用字符串比較方法(例如String.Compare,String.Equals或String.IndexOf)時,應始終調用包含StringComparison類型參數的重載,以便您可以指定該方法執行的比較類型。 有關更多信息,請參見.NET Framework中使用字符串的最佳實踐。

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));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM