Reiiden制作笔记E(OGRE编码总结)
来源:互联网 发布:为什么淘宝打不开 编辑:程序博客网 时间:2024/05/17 16:45
这两天又被CEGUI的编码问题郁闷了,每次在编码问题都要纠结一下,这次彻底整理:
一、概述
1 Ascii
ASCII 只支持英语
ANSI编码 为了本地化,使用多个字节代替表示1个字符(GB2312 BIG5 JIS GBK)
2 UNICODE
UTF16 使用16位来存放一个序号(DBCS 宽字符模式)
3 UTF-8
不定长,不存在跨平台问题,中文一个占3个
二、例子
1 ASCII 使用一个字节存放一个字符(SBCS)
Kuma8dao7 4B 75 6D 61 38 64 61 6F 37
2 ANSI编码 为了本地化,使用多个字节代替1个字符(MBCS VC的一个字符选项)
飞鸟空(GB2312) B7 C9 C4 F1 BF D5
3 UTF16 使用16位存放一个序号(DBCS VC的另一个字符选项,一般是UTF16-LE)
Kuma8dao7 4B 00 75 00 6D 00 38 00 64 00 61 00 6F 00 37 00
飞鸟空 DE 98 1F 9E 7A 7A
4 UTF8
Kuma8dao7 4B 75 6D 61 38 64 61 6F 37
飞鸟空 E9 A3 9E E9 B8 9F E7 A9 BA
三、VC字符串(可能有误,是根据现象的推测)
VC主要是DBCS和MBCS两种,就是加L和不加L。
如果加L那么就把引号里的内容转化为宽字符,不加L就直接保存。
对于CEGUI所需要的UTF8,显然这两种方式都不合适,解决方法有两种:
1 UTF8和ASCII。英文是一致的,只要将中文变为3个字符即可。所以只需要改变当前的文件格式为UTF8,再输入中文时,自然就变成了3个字符的UTF8。
问题在于VC会认为此文件是ASCII的,运气好的话中文中没有ASCII的控制符才可。
2 维持当前格式不变(GB2312)。输入一个宽字符,转化为UTF8即可。
- Reiiden制作笔记E(OGRE编码总结)
- Reiiden制作笔记A(OGRE坐标轴总结)
- Reiiden制作笔记D(OGRE摄像机方向总结)
- Reiiden制作笔记C(OGRE/CEGUI配置)
- Reiiden制作笔记B(OGRE中的向量Vector3的成员方法)
- Reiiden制作笔记F(OGRE中的CEGUI DEMO7 CEGUI::RenderEffect)
- Reiiden制作笔记H(OGRE Materilas/HLSL 的完整例子)
- Reiiden制作笔记G(D3D的渲染流程)
- Ogre学习笔记(一)
- OGRE笔记
- ogre笔记
- OGRE笔记
- OGRE笔记
- Ogre笔记
- Ogre学习笔记(二)创建第一个OGRE程序
- OGRE学习笔记(一)Vs2010+Ogre配置
- OGRE框选制作
- OGRE框选制作
- linux 硬盘分区及移动硬盘挂载
- erlang 目录设置
- D3D中的渲染状态简介
- Ext Designer Preview 导出的js代码在 页面使用不显示的问题
- Unable to copy file to bin 对路径 的访问被拒绝
- Reiiden制作笔记E(OGRE编码总结)
- php的路径访问问题
- Spring MVC Internationalization
- C++代码创建窗体
- php5中的魔术方法
- Java 并发中的一些细节问题
- flash笔记之抠图
- 判断iphone4 retain屏幕方法
- 几种DrawPrimitive用法