Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/325.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 如何插入≠;签成字符串_Java_String_Utf 8_Character Encoding - Fatal编程技术网

Java 如何插入≠;签成字符串

Java 如何插入≠;签成字符串,java,string,utf-8,character-encoding,Java,String,Utf 8,Character Encoding,我想要的最终结果是 System.out.println("This is the not equal to sign\n≠"); 显示(运行时)为 不作为 This is the not equal to sign ? 有没有办法做到这一点?我尝试使用windows字符映射,在这里复制了符号,并在我的代码中复制了符号,但在将编码更改为UTF-8并插入后,它显示为?运行时… 可以做些什么?提前感谢您回答这个非常简单的问题如前所述,您可以使用:\u2260 顺便说一句,您的控制台配置也是正确的

我想要的最终结果是

System.out.println("This is the not equal to sign\n≠");
显示(运行时)为

不作为

This is the not equal to sign
?
有没有办法做到这一点?我尝试使用windows字符映射,在这里复制了符号,并在我的代码中复制了符号,但在将编码更改为UTF-8并插入后,它显示为?运行时…
可以做些什么?提前感谢您回答这个非常简单的问题

如前所述,您可以使用:
\u2260

顺便说一句,您的控制台配置也是正确的

像这样

System.out.println("This is the not equal to sign \n\u2260");

如果文本编辑器已使用UTF-8或支持此字符,请将字符编码设置为UTF-8,传递此vm参数

-Dfile.encoding=UTF-8

保存java文件时,请确保它保存在与其打开的文件相同的字符集中

在Eclipse中,当我使用特殊字符(如\u2260)保存文件时,它会询问我要使用什么字符集

在终端中打开文件并检查文件内容


确保它与您正在使用的编辑器中的字符相同。

这里有五个潜在问题:

1) 您(从编辑器)将Java源代码保存在哪个字符集编码中

2) java编译器采用哪种字符集编码

3) 哪个字符集是您的控制台

4) 你在使用翻译终端吗

5) 您的控制台字体是否包含该特定字符

为了正确处理问题1-2,您应该同时使用UTF-8(编辑器和javac设置),或者更健壮地使用转义的纯ascii文本指定Unicode字符(Frakcool应答)


对于问题3,请尝试使用
-Dfile.encoding=UTF-8
或查看以下内容。问题4-5超出了Java程序的范围。如果您不确定,只需将输出重定向到一个文件,并使用十六进制编辑器查看它。

似乎在Eclipse询问我是否要更改为UTF-8后,它才起作用,只有在我发布此消息之后。
很抱歉浪费您的时间

这似乎是控制台编码的问题,而不是Java程序的问题。-很好,可能是你的控制台。但为了确保不是文件编码出错,您可以使用Unicode转义
\u2260
而不是
字符串中的字符。我同意Crozin的观点。您可以通过写入文件而不是标准输出来测试它,然后在您知道可以处理unicode的编辑器中打开该文件。如果这行得通,那就意味着Java正确地处理了字节,问题一定是你的控制台。为我工作。尝试使用记事本。希望您正在使用IDE。
-Dfile.encoding=UTF-8