• 灵异的编码事件,niu人帮忙解释了一下


    新建记事本,只输入 “停” 字或者“停止”两个字,保存关闭,重新打开,就会乱码。但是如果汉字输入多了,就不会出现乱码了。。奇迹啊。如果在新建立的文本里只输入“联通”,再如此操作,也会出现该情况。。在xp里出现的是一个口字。。在win7里出现的是啥子都没的。。

     

    后来测试了下,记事本里填写好以上提及的几个字符后,点另存为,如果选择编码为“ANSI”,再保存的话,就要变成一个“口”字。如果选择两个“unicode”,再保存的话,则是正常的,如果选择最后一个“utf-8”,再保存的话,就会啥都不出现。。

     

    具体来说,应该是文件进行保存的时候出现的问题。

     

    ————————————————————

    刚才某位牛人给我说了下。。。

     

     

    Unicode big endian 和 Unicode 都是 Unicode 编码。
    Unicode 是 Little-Endian。
    big endian 和 little endian 不同在于 连续的4个字节(4 bytes) 变成无符号整数时的方法(或者说4个字节的“解释”次序)。

    例如:
    二进制4个字节依次为 00001101 00000110 10000000 00000011
    十进制值:13, 6, 128, 3
    Little-Endian = (13 * 256 * 256 *256) + (6 * 256 *256) + (128 * 256) + 3  = 218529795
    Big-Endian = (3 * 256 * 256 *256) + (128 * 256 *256) +     (6 * 256) + 13 = 58721805

    大多数 PC, VAX 用 Little-Endian
    SUN SPARC,PowerPC, IBM 370,Motorola 68000 系列用Big-Endian

    记事本保存的Unicode文件,若给Big-Endian 计算机用则存Unicode big endian,给PC, VAX 用,则选 Unicode。

    UTF-8 是 Unicode 传送格式,有的网站服务器用UTF-8,这时要存UTF-8。

    ANSI 只能用于西文ASCII码。

    大多数情况下,中文存为 Unicode,英文(包括一般的计算机程序)存为ANSI。

    如果从网页上用粘贴方法贴到记事本,注意存放的编码要与原来网页上编码相同(字看上去不是乱码就对了),大多数情况下,中文存为 Unicode,英文存为ANSI。

  • 相关阅读:
    归并排序模板
    树状数组模板
    KMP模板
    拓扑排序模板
    分布式唯一ID生成算法-雪花算法
    【转载】一起来学Spring Cloud | Eureka Client注册到Eureka Server的秘密
    一起来学Spring Cloud | 第八章:消息总线(Spring Cloud Bus)
    我为什么会成为一个程序猿
    一起来学Spring Cloud | 第七章:分布式配置中心(Spring Cloud Config)
    一起来学Spring Cloud | 第六章:服务网关 ( Zuul)
  • 原文地址:https://www.cnblogs.com/shlcn/p/2112866.html
Copyright © 2020-2023  润新知