亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java Unicode和UTF-8之間轉換實例

發布時間:2020-10-23 23:20:17 來源:腳本之家 閱讀:271 作者:韋邦杠 欄目:開發技術

utf-8轉unicode

 public static String utf8ToUnicode(String inStr) {
    char[] myBuffer = inStr.toCharArray();
    
    StringBuffer sb = new StringBuffer();
    for (int i = 0; i < inStr.length(); i++) {
     UnicodeBlock ub = UnicodeBlock.of(myBuffer[i]);
      if(ub == UnicodeBlock.BASIC_LATIN){
       //英文及數字等
       sb.append(myBuffer[i]);
      }else if(ub == UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS){
       //全角半角字符
       int j = (int) myBuffer[i] - 65248;
       sb.append((char)j);
      }else{
       //漢字
       short s = (short) myBuffer[i];
        String hexS = Integer.toHexString(s);
        String unicode = "\\u"+hexS;
       sb.append(unicode.toLowerCase());
      }
    }
    return sb.toString();
  }

unicode轉utf-8

public static String unicodeToUtf8(String theString) {
 char aChar;
 int len = theString.length();
 StringBuffer outBuffer = new StringBuffer(len);
 for (int x = 0; x < len;) {
  aChar = theString.charAt(x++);
  if (aChar == '\\') {
  aChar = theString.charAt(x++);
  if (aChar == 'u') {
   // Read the xxxx
   int value = 0;
   for (int i = 0; i < 4; i++) {
   aChar = theString.charAt(x++);
   switch (aChar) {
   case '0':
   case '1':
   case '2':
   case '3':
   case '4':
   case '5':
   case '6':
   case '7':
   case '8':
   case '9':
    value = (value << 4) + aChar - '0';
    break;
   case 'a':
   case 'b':
   case 'c':
   case 'd':
   case 'e':
   case 'f':
    value = (value << 4) + 10 + aChar - 'a';
    break;
   case 'A':
   case 'B':
   case 'C':
   case 'D':
   case 'E':
   case 'F':
    value = (value << 4) + 10 + aChar - 'A';
    break;
   default:
    throw new IllegalArgumentException(
     "Malformed  \\uxxxx  encoding.");
   }
   }
   outBuffer.append((char) value);
  } else {
   if (aChar == 't')
   aChar = '\t';
   else if (aChar == 'r')
   aChar = '\r';
   else if (aChar == 'n')
   aChar = '\n';
   else if (aChar == 'f')
   aChar = '\f';
   outBuffer.append(aChar);
  }
  } else
  outBuffer.append(aChar);
 }
 return outBuffer.toString();
 }

補充知識:java get請求帶參數報錯 java.io.IOException: Server returned HTTP response code: 400 for URL

java Unicode和UTF-8之間轉換實例

解決方案

在使用JAVA發起http請求的時候,經常會遇到這個錯誤,我們copy請求地址在瀏覽器中運行的時候又是正常運行的,造成這個錯誤的原因主要是因為請求的URL中包含空格,這個時候我們要使用URLEncoder.encode(timestamp,"utf-8")對含有空格的參數進行處理;(注:只對需要處理的參數部分進行處理,不要把整個URL放進去,如果整個URL放進去會對URL中的"http://"也會進行處理);

java Unicode和UTF-8之間轉換實例

以上這篇java Unicode和UTF-8之間轉換實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

合江县| 涟源市| 石林| 靖宇县| 保靖县| 西昌市| 芮城县| 南漳县| 白城市| 林州市| 石台县| 文登市| 石泉县| 黄山市| 天津市| 甘孜县| 弥渡县| 朔州市| 牟定县| 客服| 阳西县| 淮滨县| 祁连县| 鲜城| 鹤壁市| 黎城县| 新郑市| 永和县| 达州市| 宁化县| 潞西市| 额尔古纳市| 永靖县| 汉沽区| 循化| 长兴县| 方城县| 通州市| 娱乐| 丹寨县| 定边县|