unicode字符如何以ascii编码?

unicode字符如何以ascii编码?,unicode,encoding,utf-8,character-encoding,ascii,Unicode,Encoding,Utf 8,Character Encoding,Ascii,我试图弄清楚非ascii字符是如何保存在ascii文件中的。例如,如果我打开记事本++并将编码设置为UTF-8,然后写入שלום,它会将其保存为11位。3个用于BOM标记,每个字符2个。(我在每个字节之前和之后添加了|) |239 | 187 | 191 | 215 | 169 | 215 | 156 | 215 | 149 | 215 | 157| 我可以查找这些值并找出它们所指的字母。例如 如果我打开一个新文件,将编码设置为ASCII,并写入相同的单词。它将节省4比特: |249 | 236

我试图弄清楚非ascii字符是如何保存在ascii文件中的。例如,如果我打开记事本++并将编码设置为UTF-8,然后写入שלום,它会将其保存为11位。3个用于BOM标记,每个字符2个。(我在每个字节之前和之后添加了|)

|239 | 187 | 191 | 215 | 169 | 215 | 156 | 215 | 149 | 215 | 157|

我可以查找这些值并找出它们所指的字母。例如

如果我打开一个新文件,将编码设置为ASCII,并写入相同的单词。它将节省4比特:

|249 | 236 | 229 | 237|


如果我打开ASCII文件,它将正确显示我键入的希伯来语单词。它怎么知道?是否有类似于unicode的引用?

只有unicode字符U+0000…U+007F可以以简单的方式用Ascii编码

记事本++没有Ascii作为编码。相反,它有“ANSI”,这是一个编码集合的误称,通常是8位编码。只是不要使用它们。改用UTF-8


在您的情况下,可能发生的情况是,在您的环境中,“ANSI”被视为8位拉丁/希伯来语编码,其中Ascii范围之外的代码数字表示希伯来语字母。这在一定程度上是有效的,但不跨系统和程序。

只有Unicode字符U+0000…U+007F可以以简单的方式以Ascii编码

记事本++没有Ascii作为编码。相反,它有“ANSI”,这是一个编码集合的误称,通常是8位编码。只是不要使用它们。改用UTF-8


在您的情况下,可能发生的情况是,在您的环境中,“ANSI”被视为8位拉丁/希伯来语编码,其中Ascii范围之外的代码数字表示希伯来语字母。这在一定程度上是有效的,但不跨系统和程序。

只有Unicode字符U+0000…U+007F可以以简单的方式以Ascii编码

记事本++没有Ascii作为编码。相反,它有“ANSI”,这是一个编码集合的误称,通常是8位编码。只是不要使用它们。改用UTF-8


在您的情况下,可能发生的情况是,在您的环境中,“ANSI”被视为8位拉丁/希伯来语编码,其中Ascii范围之外的代码数字表示希伯来语字母。这在一定程度上是有效的,但不跨系统和程序。

只有Unicode字符U+0000…U+007F可以以简单的方式以Ascii编码

记事本++没有Ascii作为编码。相反,它有“ANSI”,这是一个编码集合的误称,通常是8位编码。只是不要使用它们。改用UTF-8


在您的情况下,可能发生的情况是,在您的环境中,“ANSI”被视为8位拉丁/希伯来语编码,其中Ascii范围之外的代码数字表示希伯来语字母。这在一定程度上起作用,但不跨系统和程序。

您显示的希伯来文字符是Unicode码点
U+05E9
U+05DC
U+05D5
U+05DD
。这些代码点不可能适合ASCII,因为它们的值太大。将它们保存为字节八位字节
0xF9
0xEC
0xE5
0xED
(分别)的唯一方法是使用字符集对它们进行编码(在Windows的代码页和中实现)。正确显示这样一个文件的唯一方法是使用相同的字符集对其进行解释。如果您没有做任何特殊的事情来告诉操作系统使用该文件的特定字符集,那么您的操作系统必须设置为使用希伯来语作为其默认语言,并且该字符集是其处理ANSI(非ASCII)数据的默认字符集。

您显示的希伯来语字符是Unicode码点
U+05E9
U+05DC
U+05D5
U+05DD
。这些代码点不可能适合ASCII,因为它们的值太大。将它们保存为字节八位字节
0xF9
0xEC
0xE5
0xED
(分别)的唯一方法是使用字符集对它们进行编码(在Windows的代码页和中实现)。正确显示这样一个文件的唯一方法是使用相同的字符集对其进行解释。如果您没有做任何特殊的事情来告诉操作系统使用该文件的特定字符集,那么您的操作系统必须设置为使用希伯来语作为其默认语言,并且该字符集是其处理ANSI(非ASCII)数据的默认字符集。

您显示的希伯来语字符是Unicode码点
U+05E9
U+05DC
U+05D5
U+05DD
。这些代码点不可能适合ASCII,因为它们的值太大。将它们保存为字节八位字节
0xF9
0xEC
0xE5
0xED
(分别)的唯一方法是使用字符集对它们进行编码(在Windows的代码页和中实现)。正确显示这样一个文件的唯一方法是使用相同的字符集对其进行解释。如果您没有做任何特殊的事情来告诉操作系统使用该文件的特定字符集,那么您的操作系统必须设置为使用希伯来语作为其默认语言,并且该字符集是其处理ANSI(非ASCII)数据的默认字符集。

您显示的希伯来语字符是Unicode码点
U+05E9
U+05DC
U+05D5
U+05DD
。这些代码点不可能适合ASCII,因为它们的值太大。将它们保存为字节八位字节
0xF9
0xEC
0xE5
0xED
(分别)的唯一方法是使用字符集对它们进行编码(在Windows的代码页和中实现)。这样一个文件的唯一方法就是di