小编典典

源代码应以UTF-8格式保存

java

将您的源代码保存为UTF-8格式有多重要?

Windows上的Eclipse默认使用CP1252字符编码。CP1251格式意味着可以保存非UTF-8字符,并且如果您从Word文档中复制并粘贴以进行注释,我已经看到这种情况。

我问的原因是因为出于习惯,我将Maven编码设置为UTF-8格式,最近它捕获了一些不可映射的错误。

(更新)请添加执行此操作的任何原因以及为什么,应该知道一些常见的陷阱?

(更新)您的目标是什么?为了找到最佳实践,所以当问我们为什么要使用UTF-8时,我有一个很好的答案,但现在还没有。


阅读 758

收藏
2020-09-21

共1个答案

小编典典

你的目标是什么?平衡您的需求和选择的利弊。

UTF-8优点

  • 允许使用所有字符文字而无需\uHHHH转义

UTF-8缺点

  • 使用非ASCII字符文字,而不会\uHHHH增加字符损坏的风险
    • 字体和键盘问题可能会出现
    • 需要记录并强制在所有工具(编辑器,编译器生成脚本,差异工具)中使用UTF-8
  • 当心字节顺序标记

ASCII优点

  • 字符/字节映射由多种编码共享
    • 使源文件非常可移植
    • 通常会避免指定编码元数据的需要(因为如果将文件重新编码为UTF-8,Windows-1252,ISO 8859-1以及大多数缺少UTF-16和/或EBCDIC的文件,它们将是相同的)

ASCII缺点

  • 有限字符集
  • 这不是1960年代

注意:ASCII是7位,不是“扩展的”,并且不要与Windows-1252,ISO 8859-1或其他任何东西混淆。

2020-09-21