匕首输出java(char)134无法工作cp1252
通常,我的程序应将所有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
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 † :
††