通过以下方法将GBK字符转成UTF-8编码格式的byte【】数组

  1. package test;
  2. import java.io.UnsupportedEncodingException;
  3. public class TestEncoder {
  4. /**
  5. * @param args
  6. */
  7. public static void main(String[] args) throws Exception {
  8. String gbk = "iteye问答频道编码转换问题";
  9. String iso = new String(gbk.getBytes("UTF-8"),"ISO-8859-1");
  10. System.out.println(iso);
  11. String utf8 = new String(iso.getBytes("ISO-8859-1"),"UTF-8");
  12. System.out.println(utf8);
  13. System.out.println(getUTF8StringFromGBKString(gbk));
  14. }
  15. public static String getUTF8StringFromGBKString(String gbkStr) {
  16. try {
  17. return new String(getUTF8BytesFromGBKString(gbkStr), "UTF-8");
  18. } catch (UnsupportedEncodingException e) {
  19. throw new InternalError();
  20. }
  21. }
  22. public static byte[] getUTF8BytesFromGBKString(String gbkStr) {
  23. int n = gbkStr.length();
  24. byte[] utfBytes = new byte[3 * n];
  25. int k = 0;
  26. for (int i = 0; i < n; i++) {
  27. int m = gbkStr.charAt(i);
  28. if (m < 128 && m >= 0) {
  29. utfBytes[k++] = (byte) m;
  30. continue;
  31. }
  32. utfBytes[k++] = (byte) (0xe0 | (m >> 12));
  33. utfBytes[k++] = (byte) (0x80 | ((m >> 6) & 0x3f));
  34. utfBytes[k++] = (byte) (0x80 | (m & 0x3f));
  35. }
  36. if (k < utfBytes.length) {
  37. byte[] tmp = new byte[k];
  38. System.arraycopy(utfBytes, 0, tmp, 0, k);
  39. return tmp;
  40. }
  41. return utfBytes;
  42. }
  43. }

解决GBK字符转UTF-8乱码问题的更多相关文章

  1. 理解并解决GBK转UTF-8奇数中文乱码(转)

    最近在做一个反馈功能,把数据反馈到对方公司网站,我公司是GBK编码,对方公司是UTF-8编码.因此,我需要将GBK编码数据转换成UTF-8编码数据,这样对方网站才不会乱码.最简单的方法是将HttpCl ...

  2. python爬虫解决gbk乱码问题

    今天尝试了下爬虫,爬取一本小说,忘语的凡人修仙仙界篇,当然这样不好,大家要支持正版. 爬取过程中是老套路,先获取网页源代码 # -*- coding:UTF-8 -*- from bs4 import ...

  3. 22-python爬虫解决gbk乱码问题

    转载自: python爬虫解决gbk乱码问题   今天尝试了下爬虫,爬取一本小说,忘语的凡人修仙仙界篇,当然这样不好,大家要支持正版. 爬取过程中是老套路,先获取网页源代码 # -*- coding: ...

  4. Java_Web学习笔记_过滤器应用案例(解决全站字符乱码)

    解决全站字符乱码(POST和GET中文编码问题) servlet: l  POST:request.setCharacterEncoding(“utf-8”); l  GET: String user ...

  5. 解决在Ubuntu终端下使用cURL获取GBK格式的页面出现乱码问题

    问题描述 在Ubuntu下使用终端使用cURL去拿一个GBK的页面,发现返回来的内容里面中文都是乱码 解决方法 通过iconv来处理乱码拿到的内容,进行转码,示例如下: $curl http://ww ...

  6. 解决Fiddler查看Post参数中文乱码的问题

    解决Fiddler查看Post参数中文乱码的问题 解决方法: 1.win+R 2.打开注册表编辑器:输入regedit +回车+是 3.HKEY_CURRENT_USER\Software\Micro ...

  7. 解决URL地址中的中文乱码问题的办法

    解决URL地址中的中文乱码问题的办法 引言: 在Restful类的服务设计中,经常会碰到需要在URL地址中使用中文作为的参数的情况,这种情况下,一般都需要正确的设置和编码中文字符信息.乱码问题就此产生 ...

  8. 解决ArcGIS10.3属性表中文乱码问题

    问题描述:在10.3刚出为不久,就发现有时属性表会出现中文乱码的问题. 解决方法:在Cmd命令行中输入以下命令: reg add HKEY_CURRENT_USER\Software\ESRI\Des ...

  9. 解决Ubuntu和Windows的文件乱码问题(转载)

    解决Ubuntu和Windows的文件乱码问题(debian也通用) 1.转换文件内容编码   Windows下天生的纯文本文件,其中文编码为GBK,在Ubuntu下显示为乱码,可以使用iconv命令 ...

随机推荐

  1. plist文件Boolean类型读写方法

    http://blog.csdn.net/a6472953/article/details/7659505   转 1.读取plist文件中的Boolean类型的字段值时,要先把它转为NSNumber ...

  2. GCD的基本知识

    什么是GCD 全称是Grand Central Dispatch,可译为“牛逼的中枢调度器” 纯C语言,提供了非常多强大的函数 GCD的优势 GCD是苹果公司为多核的并行运算提出的解决方案 GCD会自 ...

  3. html、css、js注释

    HTML注释 <!--注释的内容--> CSS注释 /* 注释内容 */ JS注释 单行注释以 // 开头. 多行注释以 /* 开始,以 */ 结尾.

  4. asp.net将页面内容按需导入Excel,并设置excel样式,下载文件(解决打开格式与扩展名指定的格式不统一的问题)

    //请求一个excel类 Microsoft.Office.Interop.Excel.ApplicationClass excel = null; //创建 Workbook对象 Microsoft ...

  5. sscanf格式化输出

    char DesChar[20] = {0}; char* SouChar= "1cZCD23456abEFdedfB"; sscanf(SouChar,"%[^A-Z] ...

  6. [BZOJ 3503][Cqoi 2014]和谐矩阵

    我觉得这一题的样例输出一点都不和谐,大家千万别像我一样被坑了…… 题目不算难,果然是进错省系列555,不过搞出 O(n*m*2m) 的还是不要挣扎的比较好 我们暴力地推出第 n 行 第 m 列中每个数 ...

  7. SpringMVC案例1——对User表进行CRUD操作

    ------------------------------------------------------------------web.xml--------------------------- ...

  8. 【转】iOS bitcode实战 -- without full bitcode

    原文网址:http://www.voidcn.com/blog/GrowingGiant/article/p-5012705.html 关于bitcode的介绍,直接看下边两篇: 理解Bitcode: ...

  9. Uncaught TypeError: _react2.default.findDOMNode is not a function

    react 查找某节点时报错 Uncaught TypeError: _react2.default.findDOMNode is not a function 代码: import React, { ...

  10. SQL ServerOVER 子句,over开窗函数,SQL SERVER 开窗函数

    https://technet.microsoft.com/zh-cn/library/ms189461(v=sql.105).aspx http://www.cnblogs.com/85538649 ...