前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Eclipse保存文件时出现字符编码错误

Eclipse保存文件时出现字符编码错误

作者头像
黑泽君
发布2018-10-11 17:39:40
3.3K0
发布2018-10-11 17:39:40
举报
文章被收录于专栏:黑泽君的专栏黑泽君的专栏

Eclipse保存文件时出现字符编码错误,如下图所示:

Ecplise的默认编码,如下图所示:

eclipse 由于开源所以支持了比较杂的编码方式,而这些一个工程导入时添加了不少的外来程序,由于不是同一工程一次编码带来了其中含有 GBK 或 UTF8 或 UTF16 或 ASCII 等文件编译时就会出现错误警告。

UTF-8:Unicode Transformation Format- 8bit,允许含 BOM,但通常不含 BOM 。是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24位(三个字节)来编码。

UTF-8 包含全世界所有国家需要用到的字符,是国际编码,通用性强。UTF-8 编码的文字可以在各国支持UTF8字符集的浏览器上显示。如果是 UTF8 编码,则在外国人的英文IE上也能显示中文,他们无需下载IE的中文语言支持包。 

GBK 是国家标准GB2312 基础上扩容后兼容 GB2312 的标准。GBK的文字编码是用双字节来表示的,即不论中、英文字符均使用双字节来表示,为了区分中文,将其最高位都设定成1。

GBK 包含全部中文字符,是国家编码,通用性比 UTF8 差,不过 UTF-8 占用的数据库比 GBK 大。

Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。

Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。

1990年开始研发,1994年正式公布。

Unicode的最初目标,是用1个16位的编码来为超过65000个字符提供映射。但这还不够,它不能覆盖全部历史上的文字,也不能解决传输的问题,尤其在那些基于网络的应用中。已有的软件必须做大量的工作来解码16位的数据。

因此,Unicode用一些基本的保留字符制定了三套编码方式。它们分别是UTF-8、UTF-16和UTF-32。

正如名字所示,在UTF-8中,字符是以8位序列来编码的,用一个或几个字节来表示一个字符。这种方式的最大好处是:UTF-8保留了ASCII字符的编码作为它的一部分,例如,在UTF-8和ASCII中,“A”的编码都是0x41.。

UTF-16和UTF-32分别是Unicode的16位和32位编码方式。考虑到最初的目的,通常说的Unicode就是指UTF-16。在讨论Unicode时,搞清楚哪种编码方式非常重要。

  • UTF-8没有字节序和讨厌的BOM问题
  • UTF-8制霸互联网几乎成为事实标准
  • UTF-8对ASCII极佳的兼容性
  • 在英语统治的地球上,UTF-8可以利用单字节特性节省体积

    我倒觉得UTF-8的流行主要是英语作为国际语言的压倒性优势……互联网时代,节省的体积就是流量,流量就是 $ € ¥ ……

  • UTF-16在绝大多数情况下都是定长的,处理起来容易,然而现在处理器和内存都越发不值钱,这个优势没那么重要了。

Linux系统中默认的中文字体编码为UTF-8, 而Windows系统中默认的中文编码为GBK,Ecplise默认的中文编码也是GBK。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-02-25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Eclipse保存文件时出现字符编码错误,如下图所示:
  • Ecplise的默认编码,如下图所示:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档