字符集相关知识
qq_duhai
好记性不如烂笔头...
展开
-
java中byte转换int时为何与0xff进行与运算
在剖析该问题前请看如下代码public static String bytes2HexString(byte[] b) { String ret = ""; for (int i = 0; i String hex = Integer.toHexString(b[ i ] & 0xFF); if (hex.length() == 1) { hex = '转载 2017-06-09 09:20:26 · 253 阅读 · 0 评论 -
原码、反码、补码和移码其实很简单
最近在备战软考,复习到计算机组成原理的时候,看到书中关于原码、反码、补码和移码的定义如下(n是机器字长):原码:反码:补码:移码:看完这些定义以后,我的脑袋瞬间膨胀到原来的二倍!这样变态的公式不管你记不记得住,反正我是记不住!还好以前对它们有所了解,否则看到这一堆公式恐怕我早就放弃参加软考的念头喽。转载 2017-06-09 09:29:33 · 366 阅读 · 0 评论 -
十分钟搞清字符集和字符编码
本文将简述字符集,字符编码的概念。以及在遭遇乱码时的一些常用诊断技巧背景:字符集和编码无疑是IT菜鸟甚至是各种大神的头痛问题。当遇到纷繁复杂的字符集,各种火星文和乱码时,问题的定位往往变得非常困难。本文就将会从原理方面对字符集和编码做个简单的科普介绍,同时也会介绍一些通用的乱码故障定位的方法以方便读者以后能够更从容的定位相关问题。在正式介绍之前,先做个小申明:如果你希望非常精确的理解各转载 2017-06-09 09:38:27 · 334 阅读 · 0 评论 -
Unicode、UTF-8 和 ISO8859-1到底有什么区别
本文主要包括以下几个方面:编码基本知识,java,系统软件,url,工具软件等。 在下面的描述中,将以"中文"两个字为例,经查表可以知道其GB2312编码是"d6d0 cec4",Unicode编码为"4e2d6587",UTF编码就是"e4b8ade69687"。注意,这两个字没有iso8859-1编码,但可以用iso8859-1编码来"表示"。2. 编码基本知识 最早的编码转载 2017-06-09 10:16:53 · 350 阅读 · 0 评论 -
get请求URL传值时中文乱码解决办法
解决办法一: get方式请求,若url含非西欧编码必然会乱码,处理方式:request.setCharacterEncoding("utf-8"); 将请求参数使用ISO-8859-1分解成字节数组,再将字节数组解码成字符串: String name = new String(request.getParameter("name").getBytes("ISO-8859-1转载 2017-06-09 10:59:18 · 770 阅读 · 0 评论 -
谈谈对Java中Unicode、编码的理解
我们经常会遇到编码问题。Java号称国际化的语言,是因为它的class文件采用UTF-8,而JVM运行时使用UTF-16(至于为什么JVM中要采用UTF-16,我没看过 相关的资料,但我猜可能是因为JAVA里面一个字符(char)就是16位的,而UTF-16正是双字节编码),都是unicode的编码。 unicode 的目标就是能支持世界上所有的字符集,也就是说几乎所有的字符集包含的字转载 2017-06-21 14:52:37 · 266 阅读 · 0 评论 -
JS为什么有时候要做两次encodeURI
这个问题的根本原因是服务器会自己做一次解码,且解决的字符集不一定是UTF-8。对于var url = "b.jsp?name="+u_name; 要想把中文的name传到后台,需要对url进行一次编码,否则是乱码。A. 前端:var url1=encodeURI(url);后台:String name=request.getParameter("name");有时会乱码,转载 2017-06-21 15:21:56 · 273 阅读 · 0 评论