Java 如何显示注册商标符号®;在unix中

Java 如何显示注册商标符号®;在unix中,java,unix,Java,Unix,如何在unix环境下显示注册商标symbol®symbol。 此符号在windows环境中工作,但在unix环境中不工作。我在java文件中有段落。在windows环境中工作时显示此符号,但移动到unix(服务器)符号,该符号不以(®)格式显示 这是向客户发送电子邮件的消息。在windows中运行程序时,发送电子邮件的格式正确。但在unix(服务器)中运行时,发送的格式不正确 这里有什么问题 从Windows系统发送电子邮件时,显示正确格式的电子邮件。但unix系统不显示 例如: 原始消息=“s

如何在unix环境下显示注册商标symbol®symbol。 此符号在windows环境中工作,但在unix环境中不工作。我在java文件中有段落。在windows环境中工作时显示此符号,但移动到unix(服务器)符号,该符号不以(®)格式显示

这是向客户发送电子邮件的消息。在windows中运行程序时,发送电子邮件的格式正确。但在unix(服务器)中运行时,发送的格式不正确

这里有什么问题

从Windows系统发送电子邮件时,显示正确格式的电子邮件。但unix系统不显示

例如: 原始消息=“stackoverflow®” 获取电子邮件信息=“stackoverflowÿ”

这背后是什么

这是一封正在发送的电子邮件

我怀疑问题在于您构建和/或发送邮件的方式;e、 g.在您指定的内容类型/字符集中。但我们只能猜测,除非你发布相关代码


正如@Paŭlo Ebermann所建议的,如果您直接在代码中嵌入特殊字符,那么如果编译器使用错误的字符集/编码读取源代码,您可能会遇到编译问题。您可以通过使用Unicode转义完全避免这些问题;e、 g.将代码更改为:

    String message = "stackoverflow \u00AE";
而不是

    String message = "stackoverflow ®";
依我看,这是个好主意。。。即使这不是造成你问题的原因

这是一封正在发送的电子邮件

我怀疑问题在于您构建和/或发送邮件的方式;e、 g.在您指定的内容类型/字符集中。但我们只能猜测,除非你发布相关代码


正如@Paŭlo Ebermann所建议的,如果您直接在代码中嵌入特殊字符,那么如果编译器使用错误的字符集/编码读取源代码,您可能会遇到编译问题。您可以通过使用Unicode转义完全避免这些问题;e、 g.将代码更改为:

    String message = "stackoverflow \u00AE";
而不是

    String message = "stackoverflow ®";

依我看,这是个好主意。。。即使这不是导致您出现问题的原因。

正如Stephen C所说,一个可能的原因可能是电子邮件的构造

另一个可能的原因是编译-如果您不指示其他内容,编译器将使用系统的默认字符集,并且此默认字符集在windows和unix系统上可能不同

查看源文件的编码方式,并向编译器提供
-encoding
参数


或者,为了独立编码,您可以在源代码中编写
\u00AE

一个可能的原因可能是电子邮件结构,正如Stephen C所说

另一个可能的原因是编译-如果您不指示其他内容,编译器将使用系统的默认字符集,并且此默认字符集在windows和unix系统上可能不同

查看源文件的编码方式,并向编译器提供
-encoding
参数


或者,要独立于编码,您可以在源代码中编写
\u00AE

不显示符号。。。在什么地方?在命令行中,在编辑器窗口中,…,等等?请参见它在我的unix web浏览器上显示良好。不显示符号。。。在什么地方?在命令行中,在编辑器窗口中,…,等等?查看它在我的unix web浏览器上显示良好。原始消息=“stackoverflow®”Getting email message=“stackoverflowÿ”原始消息=“stackoverflow®”Getting email message=“stackoverflowÿ”