无法将编码更改为 utf8

无法将编码更改为 utf8

嘿!我遇到了一个非常奇怪的问题。我无法将文件转换为 utf8,它始终是 us-ascii。

我尝试过这个:

iconv --verbose --output=test2 -t UTF-8 测试

(我还使用 iso-8859-1 和 us-ascii 指定了 -f)并且当我这样做时

文件--mime编码测试2

我得到 us-ascii 文件包含一些 html 和 php。我真的不明白这一点。我尝试使用 notepad++(我正在将此文件夹共享给 win7 电脑)。我将编码设置为不带 bom 的 utf8,文件似乎发生了变化(图标变为红色),但当我保存并检查时,它仍然是 us-ascii。

我已经检查了 $LANG 并且它输出 en_US.UTF-8(我应该在语言环境中进行一些更改吗?我宁愿不要更改任何特定于国家/地区的设置)

我也尝试过重新编码,但是没有用。

注意:有些文件是用 utf8 创建的(我使用的是 eclipse,并将项目属性设置为用 utf8 编码),但由于某些奇怪的原因,有些文件没有正确编码。它们的内容又是 html 和 php。

请帮帮我。我正尝试以 utf8 显示我的网站,但有些部分因此变得混乱!

谢谢!

答案1

如果您的文件仅包含属于 (7 位) ASCII 的字符,则无法区分 UTF-8 和 ASCII,因此我并不惊讶地file说该文件是 ASCII。

如果您想以 UTF-8 格式提供这些文件,最好在 HTML、PHP 代码或服务器配置中明确说明。

答案2

您的文件可以正常显示...UTF8 只对 ascii 字符起作用。因此前 128 个字符是相同的。如果您不使用任何特殊的非 ascii 字符,则可以将其识别为 us-ascii (= ascii)。从技术上讲,ASCII 文本文件和具有相同内容的 UTF-8 是等效的。

如果服务器上仍然存在问题,则可能是其某个设置......

相关内容