1. 程式人生 > >http請求資料返回json中string欄位包含unicode的轉碼

http請求資料返回json中string欄位包含unicode的轉碼

  1. public static String decodeUnicode(String theString) {    
  2.         char aChar;    
  3.         int len = theString.length();    
  4.         StringBuffer outBuffer = new StringBuffer(len);    
  5.         for (int x = 0; x < len;) {    
  6.             aChar = theString.charAt(x++);    
  7.             if (aChar == '\\') {    
  8.                 aChar = theString.charAt(x++);    
  9.                 if (aChar == 'u') {    
  10.                     // Read the xxxx    
  11.                     int value = 0;    
  12.                     for (int i = 0; i < 4; i++) {    
  13.                         aChar = theString.charAt(x++);    
  14.                         switch (aChar) {    
  15.                         case '0':    
  16.                         case '1':    
  17.                         case '2':    
  18.                         case '3':    
  19.                         case '4':    
  20.                         case '5':    
  21.                         case '6':    
  22.                         case '7':    
  23.                         case '8':    
  24.                         case '9':    
  25.                             value = (value << 4) + aChar - '0';    
  26.                             break;    
  27.                         case 'a':    
  28.                         case 'b':    
  29.                         case 'c':    
  30.                         case 'd':    
  31.                         case 'e':    
  32.                         case 'f':    
  33.                             value = (value << 4) + 10 + aChar - 'a';    
  34.                             break;    
  35.                         case 'A':    
  36.                         case 'B':    
  37.                         case 'C':    
  38.                         case 'D':    
  39.                         case 'E':    
  40.                         case 'F':    
  41.                             value = (value << 4) + 10 + aChar - 'A';    
  42.                             break;    
  43.                         default:    
  44.                             throw new IllegalArgumentException(    
  45.                                     "Malformed   \\uxxxx   encoding.");    
  46.                         }    
  47.                     }    
  48.                     outBuffer.append((char) value);    
  49.                 } else {    
  50.                     if (aChar == 't')    
  51.                         aChar = '\t';    
  52.                     else if (aChar == 'r')    
  53.                         aChar = '\r';    
  54.                     else if (aChar == 'n')    
  55.                         aChar = '\n';    
  56.                     else if (aChar == 'f')    
  57.                         aChar = '\f';    
  58.                     outBuffer.append(aChar);    
  59.                 }    
  60.             } else    
  61.                 outBuffer.append(aChar);    
  62.         }    
  63.         return outBuffer.toString();    
  64.     }  

相關推薦

http請求資料返回jsonstring包含unicode

public static String decodeUnicode(String theString) {            char aChar;            int len = theString.length();            StringBuffer outBuffer = 

關於Http請求返回json亂碼的問題

其實很多時候我們在做http請求資料返回的時候經常會莫名發現會出現亂碼,大部分時候我們都覺得是編碼不對造成的。 一般情況下正常我們預設都是作個很簡單的操作,直接使用UTF-8編碼基本問題就搞定了 HttpWebRequest request; request = (H

關於http請求和谷歌network相關---學習筆記

content-type:實體頭部用於指示資源的MIME型別 media type。(1)application/x-www-form-urlencoded(請求預設設定):一串字串,提交的資料按照 key1=val1&key2=val2 的方式進行編碼;(2)multipart/form-data 

Shell_Shell 程式設計 (持續更新) 提取JSON 指定的值

在平時工作中,我們有時候需要對JSON 的某一個欄位進行提取, 樣例資料 : {"a1":22,"a2":"23"} {"a2":"23","a1":2233,a3:"22"}   可以使用 grep 完成功能: grep -Po 'test[" :]+\K[

Http網路請求資料解析json展示資料+網路圖片展示+資料庫+Viewpager+Fragment

1.MainActivity主頁面 package com.bwie.guoxinyu; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import and

HttpClient 傳送get請求返回Json資料

一、以百度百科介面為例二、程式碼package com.XXXX.tv.vrs.service; import java.io.IOException; import org.apache.http

09.1.VUE學習之watch監聽屬性變化實現類百度搜索功能ajax非同步請求資料,返回陣列

09.1html裡 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge">

java模擬HTTP請求,傳送JSON資料

private static String DEFAULT_CHARSET = "utf-8";/** 連線超時時間,由bean factory設定,預設為8秒鐘 */private int defaultConnectionTimeout = 8000;/** 迴應超時時間, 由bean factory設定

HTTP請求解釋

Accept : 瀏覽器(或者其他基於HTTP的客戶端程式)可以接收的內容型別(Content-types),例如 Accept: text/plain Accept-Charset:瀏覽器能識別的字符集,例如 Accept-Charset: utf-8 Accept-Encoding:瀏覽器可

spring mvc 返回json去除null

為了減少不必要的內容傳輸, 過濾null欄位,可對返回的類加入註釋來解決。 條件: 1.  spring MVC 3.X 支援註解 2. jackson-code.jar,jackson-mapper.jar 通常用jackson-all-xxx.jar 就行

配置ajax請求springmvc返回json格式資料

首先在controller的方法返回值(返回值型別為實體類)上增加@ResponseBody註解 然後兩種配置方式如下: 方式一:spring4.0以及之後版本推薦 pom.xml增加如下依賴包 &l

SpringBoot請求網頁介面資料返回JSON以及將JSON資料轉化為物件

SpringBoot中, 我們有時需要將網頁的資料介面的資料進行獲取,然後將JSON資料轉為物件,這裡有我嘗試過的方法,能夠使用。 首先有一個網頁介面有許多資料,型別為JSON,比如我所使用的這個資料地址,點選開啟 大致結構如下 {"code":0

java發起http請求獲取返回Json物件

話不多說,先看程式碼! /** * Created by david on 2017-7-5. */ import com.google.gson.JsonObject; import com.google.gson.JsonParser; import

解決:oracle+myBatis ResultMap 類型為 map 時返回結果存在 timestamp 時使用 jackson json 報錯

得到 了解 strong asn oid style 就是 put ted 前言:最近在做一個通用查詢單表的組件,所以 sql 的寫法就是 select *,然後 resultType="map" ,然後使用 jackson @ResponseBody 返回前端報錯。 轉

AKKA HTTP查詢結果返回JSON字串

akka http有一個json模組專門用於處理json和scala型別之間的轉換,通常介面以json格式作為結果響應格式,如果使用此功能,在專案的配置中引入json包,gradle引入如下: compile 'com.typesafe.akka:akka-http-spray-json_2

Mysql BLOBString的方法

轉:https://www.cnblogs.com/renjie0520/p/5242350.html 1.通過sql直接轉換 select CONVERT (*** USING utf8) AS userName from usertable; 2.通過程式轉換(注

ajax請求後臺返回json的兩種處理方法

1.使用SpringMvc的@ResponseBody註解(直接將資料寫入到流中),這種方法需要在springmvc-config.xml檔案中進行編碼配置,具體如下 後臺程式碼: springmvc-config.xml配置檔案,需要新增jackson相關jar包: 2.直

http請求資料的格式以及格式

http請求報包含三個部分: 請求行 + 請求頭 + 資料體 請求行包含三個內容 method + request-URI + http-version method 包含有 post , get, head,delete, put,

獲得陣列對應的一組資料

資料格式 reportList: [{    date: "",         projectCode:    "", 

將List某個相同的資料相加(統計出現了幾次)

//取出初始資料 List<LdpaMtxfjlb> LdpaMtxfjlbList = ldpaMtxfjlService.selectAllInfo(); Map<String,Integer> map = new HashMap<>();