前言

从网络获取JSON信息的时候,有时我们会获取到一些不知名的东西,比如下面的情况就是我获取的json信息:

可以看到artist_name我所希望的是歌手的名字,结果出来的却是一堆不知道什么东西的编码,我大概的猜测一下,它有可能就是UniCode编码,因为它和UniCode编码比较相像,原因有二:

UniCode的基本格式是->\u2345之类的形式,总是4个数字和字母的集合,而给定的那串字符串的长度就是4的倍数,这就使得很有可能它就是UniCode编码。

UTF-8编码是一大串不知名的东西,给的字符串长度不符合(排除法)

既然我猜测它是UniCode编码那么我就要验证一下,使用了一个UniCode编码的转换工具,我得到了下面的结果:

看来我的猜测是正确的,那么接下来该怎么用代码去解析它呢,总不能手动用工具去解析吧,这是肯定不行的,所以我还是百度了一下(自己也不是懂~~),最终得到了一些答案。

实现

实现的思路还是比较清晰的,代码也不是很难,额~~应该说是很简单的吧,看了就知道了。

将得到的字符串每四个一组分割得到

使用Integer类的方法将该四个一组的字符串分别得到相应的十进制大小的int值(PS:原来那四个一组是16进制的数啊,看着也挺像的)

将int值转换为char类型的字符

把char类型转换成String

把得到的每一个String连接起来就是解析出来的内容

很明显我们需要写一个函数,下面就是我的代码,我就不做过多的解释了,都是很简单的内容。

String getStrFromUniCode(String unicode){

String str = "";

for(int i=0;i

String s = "";

for(int j=i;j

s+=String.valueOf(unicode.charAt(j));

}

str+=String.valueOf((char)Integer.valueOf(s, 16).intValue());

}

return str;

}

我解析之后再程序运行的结果如下:

可以看到,程序正确运行了,可见方法还是对的,虽然我不知道是不是有相关已经封装好的方法可以直接使用,但是现在就先这么来吧。

小结

经过这次的经历,我发现遇到问题还是不能太着急,要根据自己所学的内容进行大胆的猜测,有时候可能就是根本不沾边的内容,但说不定就是对的,^_^!

【补充-2015:8:12】 因为在计算机上不能直接显示出来,但是在android手机上式可以直接看到所表示的内容,上面我所说的可能有点画蛇添足了,当时还不是太了解,现在明白了。当你看不懂所得到的信息,可以利用上面的工具来得到内容,当然也可以直接在android上显示。

android 汉字 unicode编码,Android解析UniCode编码相关推荐

  1. android 汉字转字节,android实现汉字转拼音功能 带多音字识别

    android 汉字转拼音带多音字识别功能,供大家参考,具体内容如下 问题来源 在做地名按首字母排序的时候出现了这样一个bug.长沙会被翻译拼音成zhangsha,重庆会被翻译拼音成zhong qin ...

  2. android 汉字拼音排序,Android拼音排序

    释放双眼,带上耳机,听听看~! package com.example.f; import java.util.Comparator; import net.sourceforge.pinyin4j. ...

  3. android汉字转url,Android将文本中的URL转换为超链接工具类(原文本有超链接标签也适用)...

    public class TextToLinkUtil { public static String textContainUrlToLink(String urlText) { // 先拆分原字符串 ...

  4. AJPFX解析关于编码ansi、GB2312、unicode与utf-8的区别

    大家平时遇到乱码问题是否有自己的一套解决方案?这篇文章就是介绍一下常用的编码方式 关于编码ansi.GB2312.unicode与utf-8的区别 先做一个小小的试验: 在一个文件夹里,把一个txt文 ...

  5. python解析字符编码中的Unicode和UTF-8

    文章目录 一.ASCII码 二.非ASCII编码 三.Unicode 四.Unicode的问题 五.UTF-8 六.字符串前面加u,r,b的含义 七 .Python中对各种编码的处理 八.生成json ...

  6. Android 上面实现红外解析(NEC编码)

    前不久接触到红外NEC编码,闲来无事,就想在Android上面实现红外NEC编码的解析(如果不了解NEC编码的同学,可以找度娘,相关资料很多很详细).由于接收管的原因,收到的红外波形和发射的红外波形是 ...

  7. 汉字编码(【Unicode】 【UTF-8】 【Unicode与UTF-8之间的转换】 【汉字 Unicode 编码范围】【中文标点Unicode码】【GBK编码】【批量获取汉字UNICODE码】)

    参考博客: Unicode与UTF-8互转(C语言实现):http://blog.csdn.net/tge7618291/article/details/7599902 汉字 Unicode 编码范围 ...

  8. 字符编码ASCII、Unicode 、UTF-8 及实例汉字与Unicode码的相互转化

    字符编码ASCII.Unicode .UTF-8 及实例汉字与Unicode码的相互转化 ASCII 码 我们知道,计算机内部,所有信息最终都是一个二进制值.每一个二进制位(bit)有0和1两种状态, ...

  9. 【JAVA编码专题】UNICODE,GBK,UTF-8区别

    简单来说,unicode,gbk和大五码就是编码的值,而utf-8,uft-16之类就是这个值的表现形式.而前面那三种编码是一兼容的,同一个汉字,那三个码值是完全不一样的.如"汉"的uncode值与g ...

  10. 【JAVA编码】 JAVA字符编码系列二:Unicode,ISO-8859,GBK,UTF-8编码及相互转换

    http://blog.csdn.net/qinysong/article/details/1179489 这两天抽时间又总结/整理了一下各种编码的实际编码方式,和在Java应用中的使用情况,在这里记 ...

最新文章

  1. mysql 压力测试知乎_MySQL 对于千万级的大表要怎么优化? - MySQL
  2. python 什么是上下文管理器(ContextManager)?
  3. 微信小程序将于 2017 年 1 月 9 日正式开放
  4. condition_variable的怪事
  5. osg+ActiveQT嵌入ie64位
  6. mysql数据库二级检索_MySQL数据库(2)检索信息
  7. win10: 无法连网 There is something wrong with the proxy server
  8. 内网渗透之隐藏通信隧道技术
  9. Telink BDT 的使用方法
  10. matlab 中输入log就是ln吗?(ln就是log以e为底的对数)
  11. CVE-2013-3893 IE浏览器UAF漏洞分析
  12. OAuth2.0的refresh token
  13. java中String转byte 编码格式
  14. zlg72128数码管驱动管理显示芯片
  15. SpringMVC(三)——响应
  16. 数学建模进入“新课标”,告别了“刷题”“押题”数学应该怎么学?
  17. Ubuntu/macos下安装stlink-v2驱动
  18. GOFLY在线客服系统/外贸网站在线客服+多语言支持 外贸网站即时通讯工具/中英文切换教程...
  19. 数据库中的变量和if语句的相关语法与案例
  20. html避免js脚本注入,chrome浏览器拓展——js脚本拦截及注入

热门文章

  1. 如何使用一个for循环输出九九乘法表
  2. pyinstaller打包icon报错
  3. 新海诚没有参与制作的作品_由新海诚创作,却成为冷门的一部动漫,至今都没看懂...
  4. IDEA全局代码格式化
  5. ESP8266通过TCP透传连接OneNet云平台实现数据互传——保姆级教程
  6. STM32F413 SPI+DMA接收错误(SCK时钟接收后一直存在)【后参考网上论坛及F4官方例程:收发同时进行】
  7. Halcon联合VS2010打开相机并显示
  8. 代码生成器的使用步骤
  9. 【maven本地打包脚本】Git/Svn代码更新+maven打包流水线
  10. 钱多多软件制作第三天