Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
匕首输出java(char)134无法工作cp1252_Java_Char_Show_Dagger_Cp1252 - Fatal编程技术网

匕首输出java(char)134无法工作cp1252

匕首输出java(char)134无法工作cp1252,java,char,show,dagger,cp1252,Java,Char,Show,Dagger,Cp1252,通常,我的程序应将所有CP1252代码作为字符输出: System.out.println("actual file.encoding: "+System.getProperty("file.encoding")); // CP1252 for (int i = 0; i < 500; i++) { System.out.println("Nr.: "+i+ " Symbol: "+(char)i"); } 但在这本书中,134是:† 为什么不显示†?CP1252中的字节值1

通常,我的程序应将所有CP1252代码作为字符输出:

System.out.println("actual file.encoding: "+System.getProperty("file.encoding")); // CP1252


for (int i = 0; i < 500; i++) {
    System.out.println("Nr.: "+i+ " Symbol: "+(char)i");
}
但在这本书中,134是:†


为什么不显示†?

CP1252中的字节值134或0x86确实是匕首,但Java中的字符始终是UTF-16 Unicode,而在UTF-16 U+0080-U+00FF中,整数代码点128-159是非图形字符,而U+2020是对应于CP1252字节0x86的字符

仅使用System.out.write/*int 0-255*/i输出已编码的字节。或者在这种情况下不太方便,但在其他情况下更可取,将字节放入数组byte[],并使用System.out.writebyte[]。。。 有人知道这里包含哪些字符集吗?我稍后会发现,但现在它是混乱的。 谢谢您: 它使用Unicode U+2020十六进制,对应于8224:

fW.write("Omg it writes † : ");
        fW.write(13);
        fW.write(10);
        fW.write(0x2020);
        fW.write(8224);
        fW.write(13);
        fW.write(10);
输出:

    Begin:
Omg it writes † : 
††

嗯,很复杂。FileWriter怎么样。我也不能在我的文本文件XD中写†,我假设我的java程序使用了I-my迭代器,我希望这个词使用正确。。并将其转换为2字节的utf-16符号。然后将其写入具有不同字符集且不理解所有utf-16符号的文本文件。可能是CP1252..?您缺少Java中的字符和字符串始终是UTF-16/UCS-2。默认编码仅在从字节转换为字符串或字符时适用,反之亦然,无需指定显式编码。这在这里不适用。
    Begin:
Omg it writes † : 
††