九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Java中g(shù)etBytes()的用法
  1. package com.test.bs;  
  2.   
  3. /** 
  4.  *  
  5.  * 1、Unicode是一種編碼規(guī)范,是為解決全球字符通用編碼而設(shè)計的,而rUTF-8,UTF-16等是這種規(guī)范的一種實現(xiàn)。 
  6.  
  7.    2、java內(nèi)部采用Unicode編碼規(guī)范,也就是支持多語言的,具體采用的UTF-16編碼方式。 
  8.  
  9.    3、不管程序過程中用到了gbk,iso8859-1等格式,在存儲與傳遞的過程中實際傳遞的都是Unicode編碼的數(shù)據(jù),要想接收到的值不出現(xiàn)亂碼,就要保證傳過去的時候用的是A編碼,接收的時候也用A編碼來轉(zhuǎn)換接收。 
  10.  
  11.    4、如果雙方的file.encoding確保都相同,那就省事了,都默認(rèn)轉(zhuǎn)了,但往往在不同項目交互時很多時候是不一致的,這個時候是必須要進(jìn)行編碼轉(zhuǎn)換的。 
  12.  
  13.    5、無論如論轉(zhuǎn)換,java程序的數(shù)據(jù)都是要先和Unicode做轉(zhuǎn)換,這樣也就是能處理多語言字符集的原因了。底層保持了一致,只要在傳值和接值的時候也一致就肯定不會出現(xiàn)亂碼了。 
  14.  * */  
  15. public class UnicodeTest1 {  
  16.   
  17.     public static void main(String args[]) throws Exception {  
  18.   
  19.         String str = "中文字符";  
  20.   
  21.         System.out.println("original string---" + str);// 會正常輸出原始串  
  22.   
  23.         /** 
  24.          *  
  25.          * str.getBytes();  如果括號中不寫charset,則采用的是Sytem.getProperty("file.encoding"),即當(dāng)前文件的編碼方式, 
  26.          *  
  27.          * 很多人寫的是系統(tǒng)的默認(rèn)編碼,通過代碼測試并非如此,實際得到的是文件的編碼方式* 
  28.          *  
  29.          * str.getBytes("charset");//指定charset,即將底層存儲的Unicode碼解析為charset編碼格式的字節(jié)數(shù)組方式 
  30.          *  
  31.          * String new_str=new String(str.getBytes("utf-8"),"gbk")); 
  32.          *  
  33.          * //將已經(jīng)解析出來的字節(jié)數(shù)據(jù)轉(zhuǎn)化為gbk編碼格式的字符串,在內(nèi)存中即為gbk格式的字節(jié)數(shù)組轉(zhuǎn)為Unicode去交互傳遞 
  34.          */  
  35.   
  36.         String new_str = new String(str.getBytes("utf-8"), "gbk");  
  37.   
  38.         /** 
  39.          *  
  40.          * 此時的輸出是亂碼,在UTF-8的file.encoding下輸出gbk格式的數(shù)據(jù)肯定是亂碼,但是new_str的確是gbk編碼式的 
  41.          *  
  42.          * 此時的亂碼源于encoding不符,但gbk格式的new_str本身數(shù)據(jù)并沒有問題,通過下面的轉(zhuǎn)換也可以看得出來 
  43.          */  
  44.   
  45.         System.out.println("new string----" + new_str);  
  46.   
  47.         String final_str = new String(new_str.getBytes("gbk"), "utf-8");// 此處的含意與最上邊的注釋是一致的參數(shù)含意  
  48.   
  49.         /** 
  50.          *  
  51.          *輸出是正常的,此時將gbk編碼格式的new_str字符串,用gbk這個charset去解析它,然后用utf-8再轉(zhuǎn)碼一次, 
  52.          *  
  53.          * 因為new_str確實是gbk格式的,才能經(jīng)過utf-8編碼得到正常的數(shù)據(jù)顯示。 
  54.          */  
  55.   
  56.         System.out.println("final string---" + final_str);  
  57.   
  58.     }  
  59.   
  60. }  


 

 

  1. package com.test.bs;  
  2.   
  3. import java.io.UnsupportedEncodingException;  
  4.   
  5. public class UnicodeTest2 {  
  6.   
  7.     public static void main(String[] args) {  
  8.         String a = "哈哈";  
  9.         try {  
  10.             byte[] gb2312 = a.getBytes("GB2312");  
  11.             byte[] utf = a.getBytes("UTF-8");  
  12.             for (int i = 0; i < gb2312.length; i++) {  
  13.                 System.out.print(gb2312[i]);  
  14.             }  
  15.             System.out.println();  
  16.   
  17.             for (int i = 0; i < utf.length; i++) {  
  18.                 System.out.print(utf[i]);  
  19.             }  
  20.             System.out.println();  
  21.   
  22.             System.out.println(new String(gb2312));  
  23.             System.out.println(new String(utf));  
  24.             System.out.println(System.getProperty("file.encoding"));//當(dāng)前文件的編碼方式  
  25.             System.out.println(new String(utf, "UTF-8"));  
  26.             System.out.println(new String(gb2312, "UTF-8"));  
  27.         } catch (UnsupportedEncodingException e) {  
  28.             e.printStackTrace();  
  29.         }  
  30.   
  31.     }  
  32. }  


  

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
java字符串的各種編碼轉(zhuǎn)換類ChangeCharset
java亂碼問題分析
java中文GBK和UTF-8編碼轉(zhuǎn)換亂碼的分析
GBK與UTF-8互轉(zhuǎn)亂碼詳解
Java中一個字符到底多少個字節(jié)
java 字符編碼處理
更多類似文章 >>
生活服務(wù)
熱點新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服