當前位置:首頁 » 編程語言 » javaencoding

javaencoding

發布時間: 2024-06-16 05:46:12

『壹』 為什麼java的默認編碼不是utf-8 而是gbk

因為系統是中文語言的,得到的是GBK編碼,所以肯定不是utf的。

工具:

win7

jdk

方法:

  1. 在計算機上右鍵選擇屬性

『貳』 java怎麼設置utf8

伺服器端
修改資料庫配置文件/etc/my.cnf
character-set-server=utf8mb4
collation_server=utf8mb4_unicode_ci
重啟MySQL(按照官方文檔,這兩個選項都是可以動態設置的,但是實際的經驗是Server必須重啟一下)
已有的表修改編碼為utf8mb4
ALTER TABLE
tbl_name
CONVERT TO CHARACTER SET
charset_name;
使用下面這個語句只是修改了表的default編碼
ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4;
客戶端
jdbc的連接字元串不支持utf8mb4,這個 這種方式 來解決的,如果伺服器端設置了character_set_server=utf8mb4,則客戶端會自動將傳過去的utf-8視作utf8mb4。
Connector/J did not support utf8mb4 for servers 5.5.2 and newer.
Connector/J now auto-detects servers configured with character_set_server=utf8mb4 or treats the Java encoding utf-8 passed using characterEncoding=... as utf8mb4 in the SET NAMES= calls it makes when establishing the connection. (Bug #54175)
其他的client端,比如phppython需要看下client是否支持,如果不能在連接字元串中指定的話,可以在獲取連接之後,執行」set names utf8mb4″來解決這個問題;
因為utf8mb4是utf8的超集,理論上即使client修改字元集為utf8mb4,也會不會對已有的utf8編碼讀取產生任何問題。

『叄』 java編譯出錯

由於JDK是國際版的,在編譯的時候,如果我們沒有用-encoding參數指定我們的JAVA源程序的編碼格式,則javac.exe首先獲得我們操作系統默認採用的編碼格式。

在編譯java程序時,若我們不指定源程序文件的編碼格式

  • JDK首先獲得操作系統的file.encoding參數(它保存的就是操作系統默認的編碼格式,如WIN2k,它的值為GBK)

  • 然後JDK就把我們的java源程序從file.encoding編碼格式轉化為JAVA內部默認的UNICODE格式放入內存中。

  • 然後,javac把轉換後的unicode格式的文件進行編譯成.class類文件,此時.class文件是UNICODE編碼的,它暫放在內存中

對我們來說,我們最終獲得的.class文件是內容以UNICODE編碼格式保存的類文件,它內部包含我們源程序中的中文字元串,只不過此時它己經由file.encoding格式轉化為UNICODE格式了。當我們不加設置就編譯時,相當於使用了參數:javac -encoding gbk xx.java,當然就會出現不兼容的情況。

解決方法

1.使用-encoding 指定字元集

javac -encoding utf-8 xx.java

2.把源文件編碼修改成ASCII

『肆』 java中編碼與解碼分別指什麼

java中編碼:URLEncoder.encode(strUri,"utf-8");

java中解碼碼:URLDecoder.decode(strUri,"utf-8");

『伍』 notepad++編java顯示不出中文,編碼GBK的不可映射字元

錯誤原因:

由於JDK是國際版的,在編譯的時候,如果沒有用-encoding參數指定JAVA源程序的編碼格式,則javac.exe首先獲得操作系統默認採用的編碼格式,也即在編譯java程序時,若不指定源程序文件的編碼格式,JDK首先獲得操作系統的file.encoding參數(它保存的就是操作系統默認的編碼格式,如WIN2k,它的值為GBK),然後JDK就把我們的java源程序從file.encoding編碼格式轉化為JAVA內部默認的UNICODE格式放入內存中。

解決方案:

1.英文版notepad++

菜單:Configure-->Options-->JDKTools-->Compiler

2.中文版 notepad++

菜單:設置→首選項→新建,選擇編碼方式為ANSI.

熱點內容
如何用計算器刷安卓 發布:2025-05-20 01:09:29 瀏覽:575
移動寬頻密碼重置後怎麼辦 發布:2025-05-20 01:02:04 瀏覽:808
php不是內部命令 發布:2025-05-20 00:41:09 瀏覽:97
淘寶圖片上傳用什麼軟體 發布:2025-05-20 00:40:55 瀏覽:346
mysql64位forlinux 發布:2025-05-20 00:37:25 瀏覽:345
工傷輔助器如何配置 發布:2025-05-20 00:25:13 瀏覽:602
opencv存儲圖片 發布:2025-05-20 00:16:10 瀏覽:953
ug編程鏈輪 發布:2025-05-20 00:14:03 瀏覽:100
手機鎖屏壁紙配置失敗怎麼解決 發布:2025-05-20 00:10:38 瀏覽:757
源碼編譯的軟體怎麼卸載 發布:2025-05-20 00:05:29 瀏覽:489