一般来说,UTF-8是一个很好的整体选择,具有广泛的兼容性(只是确保不要编写BOM,因为这是大多数其他软件所期望的).
如果您的大多数文本由非ASCII字符组成(即不使用基本的拉丁字母),UTF-16可以占用更少的空间.
只有当您特别需要与不支持Unicode的遗留应用程序进行交互时,才应使用"Ansi".
关于任何编码的一个重要事项是它们是除了数据之外还需要传送的元数据.这意味着您必须知道某些字节流的编码才能将其正确地解释为文本.所以,你应该要么使用该文档实际使用的编码格式(XML这里是一个最好的例子)或规范在一个单一的编码在给定的范围内,并且只使用.
例如,如果您启动一个软件项目,那么您可以指定所有源代码都在给定的编码中(再次:我建议使用UTF-8)并坚持下去.
特别是对于Python文件,有一种方法可以指定源文件的编码.