私は2つの弦を持っています。この文字は何ですか? 65279 ''
一つは、 "\" "
あり、他方は、私は、彼らが同じであることを考える "\""
です。
しかし、String.Compare
は、彼らが異なっていると言います。
これは非常に奇妙です。ここで
は私のコードです:
string b = "\"";
string c = "\"";
if (string.Compare(b, c) == 0)
{
Console.WriteLine("Good");
}
if (c.StartsWith("\""))
{
Console.WriteLine("C");
}
if (b.StartsWith("\""))
{
Console.WriteLine("B");
}
私はそれが "GoodCB" を印刷することができることを期待しました。
ただし、「B」のみが印刷されます。
私のデバッガではc[0]
は65279 ''、c[1]
は34 '' ''、b[0]
は '' 'です。
しかし、私は65279は「」であるかわかりません。
空の文字ですか?
あなたの文字列は何から来ていますか?おそらくそれを間違って読んでいるでしょう。 – SLaks
これはutf-16でエンコードされたテキストファイルの最初の文字として非常によく見られます。 FileStreamではなくStreamReaderを使用します。 –