導航:首頁 > 編程語言 > javautf8gbk轉換

javautf8gbk轉換

發布時間:2023-06-04 06:28:21

java編碼問題,GBK轉化為UTF-8

首先理解java的字元概念
java中字元串是字元的序列,虛擬機內部的字元都是16位的unicode字元,等價於C++中的WCHAR,也是為了實現虛擬機方便

WCHAR叫做寬字元,對應的MuitiChar叫做多字元,這種多字元中字元的位數不唯一

GBK 和 UTF8 是多字元的不同編碼形式

s=new String(s.getBytes("gbk"),"utf-8");
的意思是:
byte[] bytes=s.getBytes("gbk");
s=new String(bytes,"utf-8");

第一句是將s對應的gbk編碼轉出來,形成一個位元組流
第二句是將這個位元組流按照utf-8編碼轉為java字元串,因此相當於將gbk編碼的位元組流當做utf-8來使用,這樣在中文中會出現亂碼

你的問題是,介面返回的已經是utf-8 所以它必須是byte[] 流,如果是字元串的話就不好辦了

Ⅱ 請問,將java文件的格式進行轉換,由GBK編碼轉UTF-8

try{
Stringstr=newString("xx".getBytes("GBK"),"UTF-8");
}catch(UnsupportedEncodingExceptione){
e.printStackTrace();
}

你可以試試看,希望能幫到你。

Ⅲ java 怎麼gbk轉碼utf-8

方法一:

思路:先轉為Unicode,然後轉為GBK
Stringutf8=newString(t.getBytes("UTF-8"));
System.out.println(utf8);
Stringunicode=newString(utf8.getBytes(),"UTF-8");
System.out.println(unicode);
Stringgbk=newString(unicode.getBytes("GBK"));

System.out.println(gbk);

方法二:

publicstaticvoidmain(String[]args){
Stringstr="字元串編碼轉換";
try{
byte[]temp=str.getBytes("utf-8");//這里寫原編碼方式
byte[]newtemp=newString(temp,"utf-8").getBytes("gbk");//這里寫轉換後的編碼方式
StringnewStr=newString(newtemp,"gbk");//這里寫轉換後的編碼方式
System.out.println(newStr);
}catch(UnsupportedEncodingExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}

Ⅳ java utf 8轉gbk

utf8和gb2312本來就是兩個不同的字元集,對於中文來說,它們的編碼並不會相同。如果剛開始的字元是utf8的,那麼轉換為gb2312後自然會是亂碼;如果初始時是gb2312的中文,而後經utf8中間編碼後又從utf8轉為gb2312後不會是亂碼的。

我想是這樣的!

這有往篇文章,是關於java字元編碼相關的,講的很詳細,有代碼示例,你可以去看一下:http://vinter.javaeye.com/blog/670502

Ⅳ java怎麼把UTF-8字元串轉成GBK字元串

java不同編碼之間進行轉換,都需要使用unicode作為中轉。

以utf-8轉gbk為例,示例代碼如下:

Stringt="這是一個字元串aaa111";
Stringutf8=newString(t.getBytes("UTF-8"));
System.out.println(utf8);
Stringunicode=newString(utf8.getBytes(),"UTF-8");
System.out.println(unicode);
Stringgbk=newString(unicode.getBytes("GBK"));
System.out.println(gbk);

Ⅵ java txt文件utf-8轉GBK的問題

步驟一:直接把文件備份。

步驟二:打開文件,選擇「另存為」。

步驟三:編碼格式從「UTF-8"切換到「GBK」(默認)。保存即可。

Ⅶ java中GBK編碼格式轉成UTF8,用一段方法實現怎麼做

java中GBK編碼格式轉成UTF8編碼格式的方法如下:

publicstaticvoidmain(String[]args)throwsThrowable{
StringerrStr="errStr";
System.out.println(recover(errStr));
}
publicstaticStringrecover(Stringstr)throwsThrowable{
returnnewString(str.getBytes("GBK"),"UTF-8");
}

其中errStr就是亂碼字元串,按照相反的順序在編碼蘆喊(用gbk)、解碼(用utf-8)回去,就能得到正確的字元串.
GBK、UTF-8是一種「編碼格式」,是用來序列化或存儲「編號(數字含族)」的一種「格式」;GBK和UTF-8都是用來序列化或存儲unicode編碼的數據的,但是分別是2種不同的格式; 除了格式不一樣之外,所關談嘩弊心的unicode編碼范圍也不一樣,utf-8考慮了很多種不同國家的字元,涵蓋整個unicode碼表,所以其存儲一個字元的編碼的時候,使用的位元組長度也從1位元組到4位元組不等;而GBK只考慮中文——在unicode中的一小部分——的字元,的編碼,所以算好了只要2個位元組就能涵蓋到絕大多數常用中文(2個位元組能表示6w多種字元),所以存儲一個字元的時候,所用的位元組長度是固定的;

閱讀全文

與javautf8gbk轉換相關的資料

熱點內容
如何把命令框里的輸出到窗口 瀏覽:529
離線版mc如何開伺服器 瀏覽:884
結對程序員 瀏覽:768
使用過的蘋果手機怎麼同步app 瀏覽:344
phpcookie無效 瀏覽:954
python可以搜數學答案 瀏覽:706
均線衍生指標源碼設置 瀏覽:496
做精一張圖pdf 瀏覽:851
編程培訓小朋友 瀏覽:787
巴克球製作解壓 瀏覽:851
測量參數時接單片機的 瀏覽:116
手機音樂添加文件夾 瀏覽:546
百度智能雲b18怎麼刪除app 瀏覽:968
單片機中為什麼顯示找不到頭文件 瀏覽:151
iisweb伺服器如何重啟 瀏覽:838
微信沒有適配方舟編譯器 瀏覽:81
箍筋加密區梁的凈高 瀏覽:889
samp如何加入外國伺服器 瀏覽:895
保鮮膜解壓教學視頻 瀏覽:983
台達plc編程通訊管理軟體 瀏覽:407