gpt4 book ai didi

java - 尝试使用 UTF-16 字符代码打印 "white smiling face"\u263A

转载 作者:行者123 更新时间:2023-11-30 07:41:26 26 4
gpt4 key购买 nike

我正在尝试使用以下 Java 代码行将“白色笑脸”打印到控制台窗口:

System.out.println( '\u263A' );

我没有得到笑脸,但得到了其他一些看起来有点像问号的角色。

我正在使用 jdk 和 jre 版本 1.8.0_66 运行 Windows 7 Pro 操作系统,有任何关于原因的提示吗?

注意:我在控制台窗口中使用 Consolas 字体,它根据字符映射对话框将代码映射到表意文字。

最佳答案

这在您的代码中并不是真正的问题。正如评论者所指出的,编写 Unicode 代码点与应用程序或操作系统选择将字节序列呈现为字符的方式之间存在差异。以下是我在 Mac 上得到的结果:

> javac TestWhiteSmilingFace.java && java TestWhiteSmilingFace

Windows 控制台不支持 Unicode 输出。相反,它在 Windows Code Pages 上运行.

如果您愿意将输出通过管道传输到单独的文件,然后在记事本中打开它,那么这里有一个对我来说成功的方法。

  1. 使用 /U 选项启动 cmd.exe。正如 cmd documentation 中所讨论的, 此选项强制重定向到文件的命令输出采用 Unicode。
  2. 将命令输出重定向到文件,即 java TestWhiteSmilingFace > TestWhiteSmilingFace.txt
  3. 在记事本中打开文件,即 notepad TestWhiteSmilingFace.txt

这个先前的答案更详细地讨论了 Windows 控制台 Unicode 限制,并建议使用 PowerShell Integrated Scripting Environment作为一个潜在的解决方法。

Printing Unicode characters to the PowerShell prompt

关于java - 尝试使用 UTF-16 字符代码打印 "white smiling face"\u263A,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34643648/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com