zoukankan      html  css  js  c++  java
  • <feff>的问题

    在现网代码和配置文件里面,发现中文出现乱码。一查发现这些文件是因为“编码(Encoding)”为ANSI。

    所以一时痛快地用 notepad++ 通过 “格式M” 选择 “转为UTF-8编码格式” ,打包更新代码。

    然后悲剧了。web server response 的信息,莫名地少了几位。再用vim打开,就发现响应信息头部多了一串字符:<feff>

    原来,

    有些编辑器,比如M$ Windows的记事本,在创建UTF8编码文件时会在头部添加一个不可见字符。这个字符可以通过vim查看到,而且如果是一个php文件,php4、php5在解析时均会有输出。

    原来这个被称作BOM(Byte Order Mark)的不可见字符,是Unicode用来标识内部编码的排列方式的,在UTF-16、UTF-32编码里它是必需的,而在UTF-8里是可选的。因 此,才会出现有的编辑器在文件头部添加添加BOM、而有的语法解析器又不作处理的的混乱情况。

    根据w3c里FAQ的建议,解决方法就是,删无赦!

    **************************

     http://apps.hi.baidu.com/share/detail/35382688

    BOM的UTF文本文件例子,可以用vi 杜撰几个,相关命令如下:

    #设置UTF-8编码
    :set fileencoding=utf-8
    #添加BOM
    :set bomb
    #删除BOM
    :set nobomb
    #查询BOM
    :set bomb?

    如何检测UTF-8编码中的BOM呢?

    shell> grep -I -r -l $'xEFxBBxBF' /path

    如何删除UTF-8编码中的BOM呢?

    shell> grep -I -r -l $'xEFxBBxBF' /path | xargs sed -i 's/^xEFxBBxBF//g'

    在选择用 notepad++ 转 utf-8 时,要选择 “转为UTF-8无BOM编码格式

    http://7567567.blog.51cto.com/706378/641744

  • 相关阅读:
    sharepoint ECMA 添加指定的人员和指定的角色到某个list里
    sharepoint ECMA 添加User到Site组
    sharepoint ECMA PeopleEditor 清除选中的中的人员
    sharepoinT Modal Dialog
    sharepoint ECMA
    sharepoint 列表查询范围
    sharepoint 2013 添加Quickpart
    背包、队列和栈
    Java 同步块
    Andriod性能优化笔记
  • 原文地址:https://www.cnblogs.com/cloudstorage/p/3642909.html
Copyright © 2011-2022 走看看