字符编码,UTF还是ANSI?

时间:2010-04-13 17:49:11

标签: windows eclipse ubuntu character-encoding notepad++

我在Ubuntu中使用Eclipse来编辑PHP文件。

但遗憾的是,其中一些PHP文件是在Windows XP的Notepad ++中创建的,并定义了ANSI编码。

此外,这些文件使用charset = ISO-8859-1生成HTML代码。

当我将Eclipse配置为ISO-8859-1时,许多特殊字符丢失并更改为“???”,当我尝试使用ISO enconding保存文件时,Eclipse会显示无法保存的错误该文件,因为某些字符与字符集不兼容。

如何在不更改编码的情况下保存这些文件,或者如何在不丢失字符的情况下更改编码。

3 个答案:

答案 0 :(得分:3)

到目前为止,您需要使用ANSI编码读取这些文件,然后使用ISO-8859-1编码编写这些文件。在Notepad ++中,您可以通过 Format 菜单选项更改编码。不幸的是,没有ISO-8859-1选项,但UTF-8应该足够了,现在也是世界统治的首选,因为ISO-8859-1编码只涵盖拉丁字符,而不是西里尔字母,希腊文,中文,阿拉伯语,等等。

答案 1 :(得分:2)

“ANSI”是指“Windows代码页1252”?

在任何一种情况下,一旦找出源编码,就可以使用iconv将该编码转换为UTF-8。

答案 2 :(得分:1)

最新版本可以在ISO-8859-1和UTF-8之间进行CONVERT而不会丢失信息。 版本5.6.8能够这样做。