Mr_QQQ 2015-07-25 02:09 采纳率: 0%
浏览 2300

关于计算机字符编码的问题!

计算机字符编码一直困扰我,真希望有大牛帮我解惑:
1. 输入法在输入文本的时候其实是输入对应字符编码集的对应字符的二进制编码,那么这时如果要保存,只需要保存这些二进制字节就可以了,读的时候用输入时使用的编码集解码即可,为什么还有选择保存字符编码这一项,以上只是我的理解。比如:
在windows中使用记事本时,我们输入:
你好,世界!
这时我们使用的是输入法在当前环境中默认的字符编码方式进行输入的,那么我们 需要直接保存即可,但保存时有额外选项,即选择编码方式的选项:
图片说明
假如我们选择不与当前默认编码方式一样的编码方式保存,为什么重新读取时还是一 样的字符,即还是:
你好,世界!
我是这样理解的,假如我们默认编码为a , 保存时用的编码是b , a和b使用的字符集不 一样我们输入法输入汉字时,用的是编码a , 保存时用的是编码b , 那么我们读取时计 算机会判断其保存时的字符编码是b , 就先以b解码,解码后的字节以系统默认编码 方式编码。
问题来了,以上理解对吗?不管怎么选择保存时的编码,最终的显示汉字还是以输入 法输入时的编码方式解码的,那么保存时选择保存编码方式这一项有必要吗。
2 , Unicode和GB的一些字符编码集的汉字编码对应的字节不是一样的,对吗?
3 , 现在我们做项目总喜欢用UTF-8来传输数据,UTF - 8对应的字符编码集就是Unic ode,但其汉字用3个字符,其实在中国是很浪费的,是吗?

  • 写回答

6条回答 默认 最新

  • Robot-C 2015-07-25 02:20
    关注

    UTF-8是Unicode的一种实现方式,也就是它的字节结构有特殊要求,所以我们说一个汉字的范围是0X4E00到0x9FA5,是指unicode值,至于放在utf-8的编码里去就是由三个字节来组织,所以可以看出unicode是给出一个字符的范围,定义了这个字是码值是多少,至于具体的实现方式可以有多种多样来实现。

    UTF-8是一种变长字节编码方式。对于某一个字符的UTF-8编码,如......
    答案就在这里:计算机字符编码
    ----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。

    评论

报告相同问题?

悬赏问题

  • ¥15 本题的答案是不是有问题
  • ¥15 关于#r语言#的问题:(svydesign)为什么在一个大的数据集中抽取了一个小数据集
  • ¥15 C++使用Gunplot
  • ¥15 这个电路是如何实现路灯控制器的,原理是什么,怎么求解灯亮起后熄灭的时间如图?
  • ¥15 matlab数字图像处理频率域滤波
  • ¥15 在abaqus做了二维正交切削模型,给刀具添加了超声振动条件后输出切削力为什么比普通切削增大这么多
  • ¥15 ELGamal和paillier计算效率谁快?
  • ¥15 蓝桥杯单片机第十三届第一场,整点继电器吸合,5s后断开出现了问题
  • ¥15 file converter 转换格式失败 报错 Error marking filters as finished,如何解决?
  • ¥15 Arcgis相交分析无法绘制一个或多个图形