不含 BOM 的 UTF-8 才是标准形式”,的确是这样,无BOM使用得更多些,所以个人还是推荐一般情况下用无BOM的形式吧,除非有问题的时候,再考虑换有BOM的。Windows系统保存的都是有BOM的,所以你可以看到,用记事本保存一个UTF-8的txt,其实是有BOM的,这一点需要注意。另外不同的文本编辑器对于有无BOM的称呼也略有不同,比如EditPlus,有BOM的称为UTF-8+,无BOM的称为UTF-8,而在Notepad++中,有BOM的被称为标准UTF-8,而无BOM则被称为UTF-8无BOM。 


notepad++会自动添加为带Bom的utf8比较坑爹

「无 BOM 的 UTF-8」在Windows系统中无法全文搜索- -III

而且中文「无 BOM 的 UTF-8」文档用写字板打开貌似也会乱码(win10系统) 

建议编程人员能使用 Mac 编程的尽量使用Mac,Window是及其操蛋的操作系统。其次,如果我们要读取三方的文件并以UTF-8格式解析的时候一定要注意去判断这个文件是否有BOM,例如:sql文件的解析执行。 

这里建议程序要在windows 和 mac 还有linux 上运行的话,源代码最好保存成utf-8 带bom的格式,这样比较通用一些。而用utf-16 无论大端还是小端,g++ 都不认的。或者用utf-8 不带bom格式,然后代码不要出现非ascii 127以后的字符。


最新文章

  1. C++:获取数组长度
  2. mysql 支持emoji
  3. GitHub进一步了解
  4. Android SlidingMenu开源库及其使用
  5. tcp/ip状态图
  6. A ResourcePool could not acquire a resource from its primary factory or source
  7. vue vuex 提交 this.$store.commit({type: 'setSelectPro', selectPro: this.productId});
  8. SQL to Java code for Elasticsearch
  9. python验证码简单识别
  10. JQuery 绑定单击事件到某个函数的的方法
  11. Typora/VSCode/Sublime 更改Markdown默认宽度样式等
  12. 黄聪:Windows2012-IIS8安装SSL证书
  13. Visual Studio开发工具升级注意事项
  14. linux命令总结free命令
  15. C/C++基础----表达式
  16. oauth2.0实现sso单点登录的方式和相关代码
  17. sql server数据行号
  18. Redis Cluster笔记
  19. Unity 2D 入门
  20. percpu之静态变量

热门文章

  1. android sdk content loader 0%不动
  2. ES容易忽视的集群配置
  3. DTD约束简介
  4. React+Webpack+Webstorm开发环境搭建
  5. DirectX using C++_error X3539:ps1_x is no longer supported...解决方案
  6. CentOS 6.8 防火墙配置
  7. xib view frame 大小调整
  8. IDEA-各模块间引用出现问题的解决方法
  9. Oracle密码过期问题 ORA-28001:the password has expired
  10. 在k8s上配置ingress并启用HTTPS证书