UTF8 、unicode 和 Ascii2】的更多相关文章

知乎--http://www.zhihu.com/question/23374078 http://wenku.baidu.com/view/cb9fe505cc17552707220865.html 作者:于洋链接:http://www.zhihu.com/question/23374078/answer/69732605来源:知乎著作权归作者所有,转载请联系作者获得授权. =============很久以前保存的,别人写的但是很明了============= 很久很久以前,有一群人,他们决定…
// c:\Program Files\Microsoft SDKs\Windows\v7.0A\Include\WinNls.h #define CP_ACP 0 // default to ANSI code page #define CP_OEMCP 1 // default to OEM code page #define CP_MACCP 2 // default to MAC code page #define CP_THREAD_ACP 3 // current thread's…
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px 'Helvetica Neue'; color: #454545} span.s1 {font: 12.0px '.PingFang SC'} 前段时间做项目遇到APP评论中有 emoji 表情符号,结果导致插入 MySQL 数据库失败,时隔好久了,现在整理一下. 一.基本原则 如果要实现存储 emoji 表情到 MySQL 实例,需要应用客户端.到 MySQL 实例的连接.MySQL 实例内…
原住址:http://www.cnitblog.com/wujian-IT/archive/2007/12/13/37671.html           /*      author:   wu.jian   (吴剑)      English name: Sword       /*      date:      2007-12-13       /*      purpose:   知识共享       这几天工作上碰到了UTF-8转GB2312的问题,而且是在嵌入式的环境下,没有API…
原来windows里记事本的ansi编码就是GB2312啊,跟utf-8,unicode是不一样的. 程序里的比如java的,Qt的string都是unicode的字符串,因此如果是你从文件中读取文字的话,一定要注意编码的问题! windows上用的一般就是GB2312,而linux大部分可能就是utf-8.…
(申明:此文章属于原创,若转载请表明作者和原处链接 )            /*      author:   wu.jian    (吴剑)      English name: Sword      /*      date:      2007-12-13      /*      purpose:   知识共享 这几天工作上碰到了UTF-8转GB2312的问题,而且是在嵌入式的环境下,没有API可用,查了很多网上的资料,大多调用VC或者linux下自带的接口.在这里我将这两天的工作做个…
Ansi,UTF8,Unicode,ASCII编码的区别 近日需要不同的编码,关于上述编码,一直迷迷糊糊,查了些资料,总算大致了解了, 下面全是从网上搜来的: 1.  ASCII和Ansi编码     字符内码(charcter code)指的是用来代表字符的内码.读者在输入和存储文档时都要使用内码,内码分为     单字节内码 -- Single-Byte character sets (SBCS),可以支持256个字符编码.     双字节内码 -- Double-Byte characte…
1.http://blog.renren.com/share/68464/3096404244…
1.ASCII码 我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串.每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte).也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从0000000到11111111. 上个世纪60年代,美国制定了一套字符编码,对英语字符与二进制位之间的关系,做了统一规定.这被称为ASCII码,一直沿用至今. ASCII码一共规定了128个字符的编码,…
首先从一个问题说起: 插入一个中文到blob类型(mysql编码是utf-unicode-ci). insert into  blobtype(data) values('中文你好') 复制数据显示为: 涓枃浣犲ソ * 这是为什么? blob存进去的出来为什么不是中文你好,因为编码的问题,我们复制后直接显示是asci编码.转成utf8编码就可以看到“中文你好”了. ansi为什么能显示中文? 百科:不同的国家和地区制定了不同的标准,由此产生了 GB2312.GBK.Big5.Shift_JIS…
近日须要不同的编码,关于上述编码,一直迷迷糊糊,查了些资料,总算大致了解了,以下全是从网上搜来的: 1.  ASCII和Ansi编码    字符内码(charcter code)指的是用来代表字符的内码.读者在输入和存储文档时都要使用内码,内码分为     单字节内码 -- Single-Byte character sets (SBCS),能够支持256个字符编码.     双字节内码 -- Double-Byte character sets)(DBCS),能够支持65000个字符编码.前者…
编码小结 1 初识编码 所谓编码,是信息从一种形式或格式转换为另一种形式的过程. 字符编码,从自然语言的字符的一个集合(如字母表或音节表),到其他东西的一个集合(如号码或电脉冲)的映射 ANSI:windows特有,在中国大陆即为GBK (DBCS Double Byte Charecter Set,双字节字符集) UCS-2:即Unicode,(Universal Multiple-Octet Coded Character Set) UTF:(UCS Transfer Format,用以存储…
package com.android.filebrowser;   import java.io.*; import java.net.*;   public class FileEncodingDetect {     static final int GB2312 = 0;     static final int ASCII = 1;     static final int UTF8 = 2;     static final int UNICODE = 3;     //static…
UNICODE,GBK,UTF-8区别 UNICODE,GBK,UTF-8区别    简单来说,unicode,gbk和大五码就是编码的值,而utf-8,uft-16之类就是这个值的表现形式.而前面那三种编码是一兼容的,同一个汉字,那三个码值是完全不一样的.如"汉"的uncode值与gbk就是不一样的,假设uncode为a040,gbk为b030,而uft-8码,就是把那个值表现的形式.utf-8码完全只针对uncode来组织的,如果GBK要转UTF-8必须先转uncode码,再转utf-8就O…
Native/Unicode Native   这是一个例子,this is a example Unicode 这是一个例子,this is a example Native/UTF-8 Native 这是一个例子,this is a example UTF-8  这是一个例子,this is a example…
在python2中:如果执行程序,在编译器中,因为默认的编码是ASCII码(英文),所以如果输入中文就会出现乱码,因此为了避免这种乱码的情况发生,在输入中文字符串之后,必须进行手动转码,将GBK/ UTF-8转化(decode)成Unicode码,存储到内存中. 如果不这么做,如果我在编译器里面规定以utf-8的规则进行编码,我输的字符串进行解码后以一串二进制形式进行存储到内存上,在编译器里面的时候译码是以同样的规则,因此不会乱码.但是如果在windows中输出结果时,由于编码的时候是以utf-…
来自:http://blog.csdn.net/xiongxiao/article/details/3741731 ------------------------------------------------------------------------ 近日需要不同的编码,关于上述编码,一直迷迷糊糊,查了些资料,总算大致了解了,下面全是从网上搜来的: 1.  ASCII和Ansi编码    字符内码(charcter code)指的是用来代表字符的内码.读者在输入和存储文档时都要使用内码…
package com.android.filebrowser;   import java.io.*; import java.net.*;   public class FileEncodingDetect {     static final int GB2312 = 0;     static final int ASCII = 1;     static final int UTF8 = 2;     static final int UNICODE = 3;     //static…
#include<string> #include<windows.h> #include<vector> using namespace std; //utf8 转 Unicode std::wstring Utf82Unicode(const std::string& utf8string) { , utf8string.c_str(), -, NULL, ); if (widesize == ERROR_NO_UNICODE_TRANSLATION) {…
static function utf8_to_unicode($c) { switch(strlen($c)) { case 1: return ord($c); case 2: $n = (ord($c[0]) & 0x3f) << 6; $n += ord($c[1]) & 0x3f; return $n; case 3: $n = (ord($c[0]) & 0x1f) << 12; $n += (ord($c[1]) & 0x3f) <…
C/C++中的字节转换 宽字节转单字节 :size_t wcstombs( char *mbstr, const wchar_t *wcstr, size_t count ); 单字节转宽字节 :size_t mbstowcs( wchar_t *wcstr, const char *mbstr, size_t count ); 上面这两个是标准C++的,下面两个好像是微软的函数.不过上面两个函数只能一个一个的转换,也就是说一次只能转换一个字符.下面两个方法就是 宽字符串与单字节字符串之间的转换…
Intent intent = getIntent();         String contentUri = null;         Uri uri =null;         if (intent.getData() != null) {             uri = intent.getData();             contentUri = "file".equals(uri.getScheme())                     ? FileC…
转载:http://blog.sina.com.cn/s/blog_7c4f3b160101dv4p.html 一个字符串长度统计的代码,如下 int calcLen(const char* _str) { ; ; while ((ch = *_str)) { CC_BREAK_IF(! ch); if (0x80 != (0xC0 & ch)) { ++n; } ++_str; } return n; }   其中关于0x80 != (0xC0 & ch)的判断, 百思不得其解,按照an…
static int fetchWordFromUTF8(const chConstStringA& strText, WCHAR& result) { int nLength = strText.length(); ) ; LPCSTR lpszTextA = strText.c_ptr(); BYTE byte = *lpszTextA; ) == 0x00) { result = (WCHAR)(BYTE)*lpszTextA; ; } ) == 0x06) { ) { DWORD…
http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001386819196283586a37629844456ca7e5a7faa9b94ee8000…
Unicode是一个巨大的字符集,给世界上所有的字符定义了一个唯一编码.其仅仅规定了每个符号的二进制代码,没有制定细化的存储规则.UTF-8.UTF-16.UTF-32才是Unicode的存储格式定义. UTF-8 Unicode符号范围 | UTF-8编码方式 (十六进制) | (二进制) --------------------+--------------------------------------------- 0000 0000-0000 007F | 0xxxxxxx 0000…
参考:http://daimajishu.iteye.com/blog/959239不过具测试,也有错误:原文如下: # author: jiangyujieuse utf8;  ##在最后一个例子,这里面不能有use utf8;use Encode;use URI::Escape; $\ = "\n"; #从unicode得到utf8编码$str = '%u6536';$str =~ s/\%u([0-9a-fA-F]{4})/pack("U",hex($1))/…
简单来说: Unicode 是「字符集」 UTF-8 是「编码规则」 其中: 字符集:为每一个「字符」分配一个唯一的 ID(学名为码位 / 码点 / Code Point) 编码规则:将「码位」转换为字节序列的规则(编码/解码 可以理解为 加密/解密 的过程) 广义的 Unicode 是一个标准,定义了一个字符集以及一系列的编码规则,即 Unicode 字符集和 UTF-8.UTF-16.UTF-32 等等编码…… Unicode 字符集为每一个字符分配一个码位,例如「知」的码位是 30693,…
C++的项目,字符编码是一个大坑,不同平台之间的编码往往不一样,如果不同编码格式用一套字符读取格式读取就会出现乱码.因此,一般都是转化成UTF-8这种平台通用,且支持性很好的编码格式. Unicode.UTF-8的概念不做过多解释,这里说一下ANSI,我第一次看到这个名词,我看成了ASCII.被Mentor狠批一顿. ANSI是一种字符代码,为使计算机支持更多语言,通常使用 0x00 ~ 0x7F范围的1 个字节来表示 1 个英文字符.超出此范围的使用0x80~0xFFFF来编码,即扩展的ASC…