这是什么字符?65279 & # 39; & # 39;

本文关键字:65279 是什么 字符 | 更新日期: 2023-09-27 18:02:59

我有两个字符串

一个是"'"

,另一个是"'"

我认为他们是一样的。

然而,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 "是什么。

是空字符吗?

这是什么字符?65279 & # 39; & # 39;

这是一个零宽度的不间断空格。
它更常用作字节顺序标记(BOM)。

如果您正在使用notepad++,请尝试转换为UTF-8(无BOM),并确保项目中的所有文件都是相同的文件系统格式。

你可以用:

Trim(new char[]{''uFEFF',''u200B'});

如果您正在从您在记事本中打开的文件中读取,它可能已经添加了它,因为它是臭名昭着的几个程序之一。

是字节顺序标记。BOM是文件开头的一个特殊标记,表示文件中文本数据的字节顺序。

我们可以使用以下代码在JavaScript中删除BOM
    function removeBOM(jsonString) {
        if (jsonString.charCodeAt(0) === 0xfeff) {
            jsonString = jsonString.slice(1);
        } 
        return jsonString;
    }