изменить кодировку файла - PullRequest
       7

изменить кодировку файла

6 голосов
/ 12 февраля 2009

У меня проблема с кодировкой символов на некоторых страницах HTML. Кажется, что причина проблемы в том, что некоторые из файлов .html не сохраняются как файлы в кодировке UTF-8. Несмотря на то, что я поручил Eclipse сохранить эти файлы как UTF-8, когда я открываю их в браузере, это указывает на то, что файлы соответствуют ISO-8859-1.

Как я могу изменить кодировку этих файлов на UTF-8?

ОБНОВЛЕНИЕ: У меня уже есть следующее, включенное в раздел каждой веб-страницы

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

Я использую веб-сервер Apache.

Спасибо, Донал

Ответы [ 6 ]

7 голосов
/ 12 февраля 2009

Вам может потребоваться изменить заголовок типа контента, который ваш веб-сервер отправляет клиенту.

Редактировать: Хотя это и сработало для данной конкретной ситуации, использование инструмента для изменения кодировки файла, как это предлагается другими авторами, может быть лучшим решением в других ситуациях. YMMV.


Инструкции по сохранению как UTF-8 в Eclipse (который, как я понимаю, у вас уже есть):

Вам, вероятно, следует изменить кодировку по умолчанию в рабочей области для документа HTML.

Это для Eclipse 3.4. Если у вас другая версия, она может немного отличаться.

Перейти в Окно-> Настройки
В окне настроек перейдите в раздел Общие-> Типы содержимого
На этом этапе вы можете указать «Кодировку по умолчанию» для файлов в нижней части окна настроек. Разверните «Текст» и выберите HTML. В записи «Кодировка по умолчанию» укажите UTF-8. Затем нажмите «обновить» справа.

После этого все файлы HTML должны быть сохранены в формате UTF-8.

4 голосов
/ 12 февраля 2009

Проблема с UTF-8 заключается в том, что в начале этих файлов нет последовательности магических байтов - единственный шанс браузера обнаружить UTF-8 - это либо объявление XML, метатеги HTML, либо некоторая эвристика в качестве запасного варианта.

Убедитесь, что в заголовке HTML есть объявление кодировки XML или некоторые метатеги HTML.

<?xml version="1.0" encoding="utf-8"?>

чуть ниже DOCTYPE, если это XHTML, или

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

в головной части.

3 голосов
/ 12 февраля 2009

Вы можете использовать iconv для преобразования файлов из одной кодировки символов в другую.

1 голос
/ 14 февраля 2012

В Eclipse 3.7 перейдите по адресу:

Windows> Предпочтения> Общие> Рабочая область

В поле «Кодировка текстового файла» укажите нужную кодировку файла.

1 голос
/ 12 февраля 2009

Попробуйте добавить

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

в заголовочный раздел ваших html-файлов или убедитесь, что ваш сервер обслуживает файлы с http-заголовком Content-Type. Без них браузер может только догадываться о кодировке символов.

0 голосов
/ 12 февраля 2009

Насколько я знаю, установка кодировки символов в Eclipse фактически не конвертирует файлы - она ​​просто сообщает Eclipse, как вы хотите, чтобы они интерпретировались. Лучше всего использовать конвертер, подобный тому, который предложил Адам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...