簡體   English   中英

日語字符在Java中無法正確顯示

[英]Japanese character not displayed properly in Java

我有文本框和一個按鈕。 我在文本框中輸入日語字符,例如こんにちは。

當我單擊按鈕時,將在文本框中發送帶有文本的電子郵件。

但是,當收到電子郵件時,它將顯示一些垃圾字符而不是日語字符。

有人可以告訴我為什么會這樣嗎?

提前致謝。

您應該確保使用的字符集支持日語字符,例如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");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM