0. 字符
:大家平时看到的符号,用来组成某种句子、语言
如 A B 张三
1. 字符集
每一种语言都有一个字符集,如英语有26个字符.....
2. 编码字符集(数字的集合)
:一个编码字符集是一个字符集的的编码形式,即为每个字符分配一个唯一的数字
如 ASCII :分配128个字符
扩展ASCII:分配256个字符
Unicode:包括了全人类字符,全人类字符的编码是Unicdoe的一个子集
ASCII和扩展的ASCII、Unicode都是一种表示字符集的编码方式,(假设)如字符a 对应0101010.....
每个字符都有对应的唯一2进制
(字符集越大,需要的字节数就越多)
3. 代码 点
代码点:代码点就是数字的集合
编码字符集合:是有效的代码点集合,已经用于表示字符的数字
如:Unicode的编码字符集合是:U+0000 -- U+10FFFF
而这个编码字符集合可以看成是属于 0---2的32次方-1 代码点范围的集合的
总结:
字符---字符集--map number--编码字符集---utf-8 utf-9-...---字符编码后的数据
4. 字符编码方案( 如utf-8 utf-16 utf-32 )
注意:
一般我们说的Unicode实际是:UTF-16字符编码的Unicode
以Unicode( 是编码字符集 )为例
由于字符 a b c d等只需1个字节就可以保存,但Unicode为容纳所有的语言的字符集,统一使用32位来表示每个字符
这样在网络传输时 对只需1个字节表示的字符,造成了浪费
Unicode支持以下3种字符编码:
1. UTF-8 :这是HTML和协议常用的,这里把Unicode字符转换成一种长度可变的字节编码。与ASCII集对应的Unicode字符,采用8位来表示,并且转变成UTF-8的Unicode字符可以再许多现有的软件找使用,如大多数浏览器支持UTF-8字符编码
2. UTF-16 :把较为常用的字符采用16位的代码单元表示,其它的用32位
3.UTF-32 :采用32位来表示每个字符,不是很好的选择。
(具体看文档或百度)
或者这篇文章:
http://www.doc88.com/p-99650883920.html
String s = "\u03C0w\uD835\uDD6B\uD835\uDD6B"; System.out.println(s.length()); int codePointCount = s.codePointCount(0,s.length()); System.out.println(codePointCount); int index = 0; int cp = 0; for(int i =0;i<s.length();i++) System.out.println((int)s.charAt(i)); System.out.println("-----"); for(int i =0;i<codePointCount;){ index = s.offsetByCodePoints(0, i); System.out.println("index= "+index); cp = s.codePointAt(index); if(Character.isSupplementaryCodePoint(cp)){ System.out.println(cp+" i ="+i); i++; } else i++; }
发表评论
-
test
2015-11-02 13:16 535testestsetet -
java thread : select poll epoll
2015-02-16 16:42 1242Select/Poll函数 Selec()的3 ... -
java thread : IO模型
2015-02-16 15:33 922IO复用:select和poll函数 ... -
ssoYY: sso的跨域问题
2015-02-06 10:52 0dsfdsfsd -
交互的YY: 交互 解耦 关系 规则
2015-01-25 15:58 1201交互需要什么:对象,对象之间是怎么交互的(直接new 注入还 ... -
java thread : NIO -概念
2015-01-22 16:04 692通道-流:代表一种功能,能操作数据的方法(策略) 数据来 ... -
ThreadLocal 简单分析
2015-01-09 15:21 767ThreadLocal<T> 是一 ... -
java 多核理解
2014-11-18 13:10 845多核、超线程CPU时代 ... -
java_thread 隐藏的迭代器 java并发编程实践
2014-04-28 10:06 10655.1.3 隐藏迭代器 看容器源代码更清楚些 ... -
笔记1 java并发编程实践
2014-04-25 16:19 567同步 共享(shared)(多个线程访问)和可变(mutabl ... -
java_thread interrupt 理解
2014-04-25 13:18 925package com.java.util.con ... -
超越java-此书笔记
2012-12-24 15:23 906前言: SSH所带来的烦恼:重复的事情太多、XML配 ... -
为什么heap分配和清理内存可能会比栈的存储分配慢?
2012-06-12 12:49 0。。。。。。。。 -
泛型PS
2012-05-13 19:24 9551.使用泛型的时候,如果2边都使用了泛型,则2边必须一样// ... -
java中PS的几点
2012-05-13 18:33 10661.增强for循环只能取数 ... -
在java switch中使用String作为分支条件 (转)
2012-05-13 16:26 2288在java中明确规定switch里面只允许使用int,ch ... -
论java字符串池 (转)
2012-04-09 18:49 1161java运行环境有一个字符串池。比如String str= ...
相关推荐
字符集和字符编码是计算机处理文字的基础,它们决定了如何在二进制的世界中表示和传输人类语言。本文将深入探讨这两个概念,以及相关的知识点。 首先,我们要理解什么是字符集。字符集,顾名思义,就是一个集合,...
字符集和字符编码是计算机处理文本的基础,它们决定了如何将人类使用的文字和符号转换成计算机可以理解的形式。本文档主要介绍了几种常见的字符集和字符编码,包括ASCII、DBCS、GB2312、GBK、GB18030、BIG5以及UCS和...
字符编码和字符集是计算机处理文字和符号的基础。字符集是指一组特定的字符集合,它包含文字、符号、数字等元素。例如,英文字符集包含了所有的英文字母和符号,而汉字字符集则包含了所有汉字。字符集可以是某个语言...
在信息技术领域,理解和掌握字符集与字符编码至关重要,因为它们直接影响到数据的存储、传输和显示。以下是对这些概念的详细介绍: 1. **字符集(Character Set)** 字符集是一个集合,包含了所有可能的字符,比如...
这种编码方式的优点在于它保留了ASCII码的特性,即对于ASCII码内的字符,UTF-8编码与ASCII码完全一致,这大大简化了编码和解码的过程。 #### 三、Java中的字符集和编码 在Java中,字符是以16位Unicode编码表示的,...
字符集与字符集编码简介 我们知道,计算机只能识别诸如0101这样的...这就涉及到字符编码的概念了,比如一个字符集有8个字符,那么用3个二进制位就可以完全表示该字符集的所有字符,也即每个字符用3个二进制位进行编码。
Mysql字符集编码详解 Mysql数据库中的字符集编码问题是许多开发者经常遇到的一个问题,特别是在JAVA项目中。解决这个问题需要从多方面入手,包括服务器、数据库、数据表和连接等四个层次。这篇文章将详细介绍如何...
字符集和编码, 原来是这样
在字符编码查询中,通常会将字符转换为二进制或十六进制进行展示和比较,因为它们更紧凑,更容易进行计算。 Base64是一种用于将二进制数据编码为ASCII字符串的方法,常用于在电子邮件等文本环境中传输非ASCII字符...
文档中主要介绍了各类字符集以及相关的字符编码,字符的显示原理,从输入到显现的整个过程,程序中出现的乱码问题以及解决方案
GB18030-2005 信息技术 中文编码字符集,单双四字节所有字符,包含简繁生僻字。
在Qt中,`QTextCodec`类是进行字符编码转换的核心工具。它可以创建并管理各种编码的解码器和编码器。例如,如果我们要将一个GBK编码的文件转换为UTF-8,我们可以这样做: ```cpp #include #include #include #...
- **兼容性**:在跨平台和跨系统的环境中,统一字符集有助于解决由于编码差异导致的问题。 #### 六、常见问题及解决方案 1. **修改客户端字符集后仍出现乱码**: - 检查服务器端和客户端的字符集设置是否一致。 ...
字符编码和解码的过程类似于加密和解密,如果解码规则错误,可能导致字符显示错误或出现乱码。 ASCII编码是最早也是最通用的字符编码标准之一,主要用于显示现代英语。它采用7位二进制数来表示一个字符,共有128个...
在计算机科学领域,字符集(Character Set)是用于表示文本的一组符号集合,它定义了可以被编码的字符范围和编码方式。字符集对于不同语言的处理至关重要,尤其是在存储、显示和传输文本时。本篇文章将详细介绍韩文...
通过对ISO 8859-1、GB2312/GBK、Unicode和UTF等常见编码的理解,以及Java提供的字符串操作方法(如`getBytes`和`new String`),开发者可以有效地解决实际项目中的字符编码问题,确保应用程序能够正确地处理各种文本...
### 维吾尔文字符集Unicode编码表 #### 概述 本文档提供了一份详细的现代维吾尔文字符集的Unicode编码表。这份表格对于理解、处理和展示维吾尔语文字具有重要意义。通过这份表格,我们可以清晰地看到每一个维吾尔文...