文章插图
- WindowsAPI 的Wide Char 表达是 UTF-16: Unicode (Windows), L"" 表示是转换为 wide char 。
- Cocoa的NSString 和 Core Foundation 的CFString 内部表达都是 UTF-16,所以其实 OSX 和 IOS 内部处理都用的是 UTF-16 。
- JAVAString 的内部表达是 UTF-16,所以大量跨平台程序和 Android 程序其实内部也在用 UTF-16 。
- 大部分的操作系统和 UI framework 的内部字符串表达(内码)都是UTF-16,不过Linux系统内使用的内码是UTF-8 。
文章插图
Tip:内码和外码
在计算机科学及相关领域当中,内码指的是“将信息编码后,透过某种方式存储在特定记忆设备时,设备内部的编码形式” 。在不同的系统中,会有不同的内码 。
在以往的英文系统中,内码为ASCII 。在繁体中文系统中,当前常用的内码为大五码 。在简体中文系统中,内码则为国标码 。
为了软件开发方便,如国际化与本地化,现在许多系统会使用Unicode做为内码,常见的操作系统Windows、mac OS X、Linux皆如此 。许多编程语言也采用Unicode为内码,如Java、Python3 。
外码:除了内码,皆是外码 。要注意的是,源代码编译产生的目标代码文件(如果Java可执行文件或class文件)中的编码方式属于外码 。
引用文章:
1、必读,真说清的话得结合上面的维基百科上的说法理解:
https://en.wikipedia.org/wiki/Universal_Coded_Character_Set
https://en.wikipedia.org/wiki/Unicode
https://en.wikipedia.org/wiki/UTF-16
https://en.wikipedia.org/wiki/UTF-32
2、除此之外参考引用了下面三篇文章的一些观点:
http://www.blogjava.net/zhenandaci/archive/2008/12/24/248014.html
https://www.cnblogs.com/malecrab/p/5300503.html
https://blog.51cto.com/polaris/377468
版权声明:本文为CSDN博主「Aledsan」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明 。
原文链接:
https://blog.csdn.net/weixin_43465312/article/details/105918985
推荐阅读
- 摩托车,考试题目内容讲解分析
- 一篇长文学懂入门推荐算法库:surprise
- 打官司,证据最重要,关于证据种类的最全面讲解,建议收藏
- 深入Facebook 官方React 状态管理器Recoil讲解
- 普洱熟茶讲解,大益荷叶普洱熟茶
- python的Django的DTL模板示例讲解
- 长文 2021年好喝的绿茶推荐攻略|附绿茶选购技巧、高性价比店铺推荐、饮用事项及存储方法
- S5130 华三交换机初始化配置讲解
- 为什么葡萄酒底部会有个很深的凹槽?听完行内人讲解,涨知识了
- 为什么别人能用好 MySQL?万字详解其复杂原理