在做http请求时,有时候服务器传回的数据中会遇到传回数据为Unicode的情况,为此需要进行Unicode转UTF-8的转化,代码:

public class StringTest {/*** @param args*/public static void main(String[] args) {String str="\u7528\u6237\u540d\u6216\u5bc6\u7801\u4e0d\u6b63\u786e\uff0c\u8bf7\u91cd\u8bd5";System.out.println(decodeUnicode("111"));}private static String decodeUnicode(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 xxxxint 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);}} elseoutBuffer.append(aChar);}return outBuffer.toString();}}

转载于:https://www.cnblogs.com/linjiqin/p/3681075.html

java Unicode转UTF-8代码相关推荐

  1. java gbk转机内码_Java实现的UTF-8,GBK,Unicode编码相互转换的代码

    java实现UTF-8,GBK,Unicode编码相互转换,代码如下: public class UTF2GBK { public String gbk2utf8(String gbk) { Stri ...

  2. Unicode、UTF 和 ISO-8859-1等编码方式详解与浏览器URL编码

    将字符转换为二进制码的过程,我们称为编码,将二进制码转换为字符的过程,我们称为解码. 编码和解码时所采用的规则,我们称为字符集 常见的字符集: ASCII - 美国人编码,使用7位来对美国常用的字符进 ...

  3. ASCII Unicode GBK UTF的联系

    快下班时,爱问问题的小朋友Nico又问了一个问题: "sqlserver里面有char和nchar,那个n据说是指unicode的数据,这个是什么意思." 并不是所有简单的问题都很 ...

  4. Java国密加密SM2代码

    Java国密加密SM2代码 文章目录 Java国密加密SM2代码 前言 一.SM2是什么? 二.使用步骤 1.引入Maven库 2.密码工具类 3.安全工具类 4.SM2工具类 5.SM2工具实用类 ...

  5. Java中码点和代码单元

    Java中码点和代码单元 前言 码点和代码单元这两个概念还是在<Java核心技术 卷一>发现的,这也是我看过这本书里面前五章中比较有用的一个知识点(PS:毕竟Java开发都一年了,基础应用 ...

  6. Java框架JSON-RPC项目demo代码实战 + JAVA WEB配置虚拟目录(转自21天java web开发)

    Java框架JSON-RPC项目demo代码实战 备注  JAVA WEB配置虚拟目录(转自21天java web开发) https://blog.csdn.net/wjxbj/article/det ...

  7. java字典写实例,基于JAVA的新华字典接口调用代码实例

    基于JAVA的新华字典接口调用代码实例 接口描述:基于JA V A的新华字典接口调用代码实例 接口平台:聚合数据 import java.io.BufferedReader; import java. ...

  8. Java文件上传功能代码 —— 普遍适用

    版权声明:本文为博主原创文章,如需转载,请标明出处. https://blog.csdn.net/alan_liuyue/article/details/72782207 一. 前言   通过之前的博 ...

  9. java bitset用途_浅谈Java BitSet使用场景和代码示例

    搜索热词 @H_502_0@一.什么是BitSet? @H_502_0@ 注:以下内容来自JDK API: @H_502_0@ BitSet类实现了一个按需增长的位向量.位Set的每一个组件都有一个b ...

  10. Java多线程之多线程工程代码编写思维方式

    Java之多线程的工程代码编写思维方式 题目:三个售票员卖出30张票,用线程模拟. 前言: 本文涉及synchronized.Lock和拉姆达表达式(Lambda Expressions),前两知识点 ...

最新文章

  1. 最新NLP架构的直观解释:多任务学习– ERNIE 2.0(附链接)| CSDN博文精选
  2. 【 C 】作用域、链接属性、存储类型、static 关键字简介及总结
  3. UVa197 - Cube(TLE)
  4. 【转】C#获取电脑客户端IP地址及当前用户名
  5. Java寻找最大公约数
  6. Python基础-小程序练习(跳出多层循环,购物车,多级菜单,用户登录)
  7. makefile 的export问题
  8. 蚂蚁金服自研数据库OceanBase如何登顶TPC-C
  9. 请查收~微信春节聊天彩蛋 微信群的卖萌小神器
  10. 使用 C1ReportDesigner 设计报表
  11. *第八周*数据结构实践项目四【字符串加密】
  12. Android Studio运行程序出现Session ‘app’: Error Launching activity 解决办法
  13. 心电信号频谱图低通Matlab,心电信号处理分析.ppt
  14. SQL Server代码如何快速格式化
  15. Liquibase修改表字段
  16. 软件的行业适配性:进销存软件与五金行业
  17. 加拿大 大学 计算机硕士学费,加拿大各大学硕士学费的情况介绍
  18. 口算训练(hdu 6287) (唯一分解定理)
  19. html页面如何设置背景,html怎么设置背景
  20. Docker 常用命令收录 -- 持续更新

热门文章

  1. 使用expect命令打通所有集群机器
  2. 解决php无法上传大文件问题
  3. Router.use() requires a middleware function but got a Object
  4. 理财里的封闭和半开放是啥意思?
  5. 自驾游开什么车最靠谱?
  6. 低代码开发平台是什么
  7. 有很帅气的微信头像推荐吗?
  8. 星座是按阴历还是阳历
  9. 如果不考虑钱和面子,你最想做什么工作?
  10. 赚钱的基本逻辑就是价值交换