我有文本框和一个按钮。我在文本框中输入日文字符,如こんにちは。
当我单击按钮时,电子邮件将与文本框中的文本一起发送。
但是当收到电子邮件时,它会显示一些垃圾字符而不是日文字符。
谁能告诉我为什么会这样?
提前致谢。
我有文本框和一个按钮。我在文本框中输入日文字符,如こんにちは。
当我单击按钮时,电子邮件将与文本框中的文本一起发送。
但是当收到电子邮件时,它会显示一些垃圾字符而不是日文字符。
谁能告诉我为什么会这样?
提前致谢。
您应该确保使用支持日文字符的字符集,例如 Unicode。
例如,在创建String
对象时,有一个重载的构造函数,您可以在其中指定字符编码:
byte[] utf8Characters = { /* UTF-8 encoded characters */ };
String s = new String(characters, "UTF-8"); // Decode bytes using UTF-8.
此外,在将字符串转换为字节时(即流式传输数据时),您可以使用:
byte[] utf8EncodedBytes = s.getBytes("UTF-8"); // Encode to UTF-8.
如果您不指定字符编码,它将默认为某些可能不支持您需要的字符的字符集。
Java Doc 说:“默认字符集是在虚拟机启动期间确定的,通常取决于底层操作系统使用的语言环境和字符集。”
我不确定你是否使用 java servlet,但如果你这样做,你可以试试这个
request.setCharacterEncoding("UTF-8");