當前位置:首頁 » 編程語言 » 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.

熱點內容
GDC伺服器的時間怎麼調 發布:2024-06-28 14:40:32 瀏覽:162
智慧團建初始密碼是多少 發布:2024-06-28 14:27:58 瀏覽:876
編程大獎 發布:2024-06-28 14:26:48 瀏覽:928
充值運行編程 發布:2024-06-28 14:09:04 瀏覽:108
拆手機存儲器 發布:2024-06-28 13:39:06 瀏覽:560
伺服器電腦能同時用嗎 發布:2024-06-28 13:39:01 瀏覽:954
榮耀戰力安卓qq區哪裡最低 發布:2024-06-28 13:36:00 瀏覽:406
java多線程變數 發布:2024-06-28 13:28:38 瀏覽:578
編程貓里元始 發布:2024-06-28 13:19:40 瀏覽:811
apache外網無法訪問 發布:2024-06-28 13:04:27 瀏覽:918