本文目錄一覽:
- 1、java如何把string轉為utf-8
- 2、用java的程序在複製.java文件的時候中文出現亂碼 ,如何添加UTF-8的代碼
- 3、java怎麼設置utf8
- 4、怎麼在java里設置utf-8
- 5、java怎麼設置為utf-8的編碼
- 6、如何設置Java JDK的默認編碼為UTF-8
java如何把string轉為utf-8
java不同編碼之間進行轉換,都需要使用unicode作為中轉。
String str = “任意字元串”;
str = new String(str.getBytes(“gbk”),”utf-8″);
備註說明:
str.getBytes(“UTF-8”); 意思是以UTF-8的編碼取得位元組
new String(XXX,”UTF-8″); 意思是以UTF-8的編碼生成字元串
舉例:
public static String getUTF8XMLString(String xml) {
// A StringBuffer Object
StringBuffer sb = new StringBuffer();
sb.append(xml);
String xmString = “”;
String xmlUTF8=””;
try {
xmString = new String(sb.toString().getBytes(“UTF-8”));
xmlUTF8 = URLEncoder.encode(xmString, “UTF-8”);
System.out.println(“utf-8 編碼:” + xmlUTF8) ;
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// return to String Formed
return xmlUTF8;
擴展資料:
UTF-8編碼規則:
如果只有一個位元組則其最高二進位位為0;如果是多位元組,其第一個位元組從最高位開始,連續的二進位位值為1的個數決定了其編碼的位元組數,其餘各位元組均以10開頭。
實際表示ASCII字元的UNICODE字元,將會編碼成1個位元組,並且UTF-8表示與ASCII字元表示是一樣的。所有其他的UNICODE字元轉化成UTF-8將需要至少2個位元組。每個位元組由一個換碼序列開始。第一個位元組由唯一的換碼序列,由n位連續的1加一位0組成,首位元組連續的1的個數表示字元編碼所需的位元組數。
Unicode轉換為UTF-8時,可以將Unicode二進位從低位往高位取出二進位數字,每次取6位,如上述的二進位就可以分別取出為如下示例所示的格式,前面按格式填補,不足8位用0填補。
參考資料來源:百度百科:UTF-8
用java的程序在複製.java文件的時候中文出現亂碼 ,如何添加UTF-8的代碼
用InputStreamReader代替FileReader,InputStreamReader isr=new InputStreamReader(new FileInputStream(fileName),”UTF-8″);
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端,比如php、python需要看下client是否支持,如果不能在連接字元串中指定的話,可以在獲取連接之後,執行」set names utf8mb4″來解決這個問題;
因為utf8mb4是utf8的超集,理論上即使client修改字符集為utf8mb4,也會不會對已有的utf8編碼讀取產生任何問題。
怎麼在java里設置utf-8
如圖所示,右鍵點擊文件名,在右鍵菜單里選擇
Properties,可以設置文件編碼,選擇UTF-8就可以了
java怎麼設置為utf-8的編碼
要讓一個
Java
源文件打開時編碼格式為
UTF-8,需要做2件事情:
1)設置Java
源文件的默認編碼格式為UTF-8;
2)設置workspace的編碼格式為UTF-8。
相應設置如下:
設置
Java
源文件的默認編碼格式為
UTF-8
在
Windows-Preference
頁面中,選擇
General-Content
Types
在右邊的框中,選擇
Text-Java
Source
File,將下面的
Default
Encoding
改為
UTF-8
設置
workspace
的編碼格式為
UTF-8
在
Windows-Preference
頁面中,選擇
General-WorkSpace
選擇右側框中的
Text
File
encoding,改為
UTF-8
設置完這2處,默認打開
Java
源文件就是UTF-8編碼了。
如何設置Java JDK的默認編碼為UTF-8
現在就可以在系統環境變數中增加一個變數,變數名為: JAVA_TOOL_OPTIONS, 變數值為:-Dfile.encoding=UTF-8,保存,重新打開命令提示符,
原創文章,作者:UHHB,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/135126.html