2014-03-18 7 views
2

Позвольте мне начать с моей конечной цели (на случай, если я ошибаюсь в любых моих предположениях или понимании кодировки символов): Я хочу, чтобы символы моих веб-страниц отображались правильно, даже если я вставляю в уникальных символах из Word или других программ.Проблема с кодировкой символов ColdFusion

Надеюсь, это может работать в большинстве случаев без необходимости передавать его через какую-либо функцию кодирования на стороне сервера. Я всегда работаю с американским английским языком и вставляю из Word, поэтому не похоже, что это должно быть так сложно.

Мне кажется, что ColdFusion испортил мою кодировку символов и отобразил апостроф (вероятно, вставленный из Word) как «. Моя страница работает как файл .htm, но как только я переименовал расширение в .cfm, это не так. Смотрите здесь:

Вот что я вижу, в этом случае вы получите что-нибудь другое: http://i.imgur.com/tA4p1yc.png (Похоже, тот, который работает, говорит Content-Type является текст/html, и тот, который не имеет Content-Type: text/html; charset-UTF-8)

Предложения? (Я правильно, что UTF-8 должна быть правильная кодировка?)

Edit: для удобства, мой источник для обоих файлов:

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="utf-8"> 
    <title>utf-8</title> 
</head> 
<body> 
<p>Make sure you don’t pack your toiletries or clothes for your travel day.</p> 
</body> 
</html> 
+0

Вы можете показать код cfm? –

+0

Код CFM _exactly_ совпадает с исходным кодом HTML в приведенном выше примере, хотя вывод обработанного изображения отличается. (После создания HTM-файла я просто сделал Save As, а затем заменил расширение.) – Michael

ответ

5

Какой редактор вы используете? Если вы используете CFBuilder2 +, то BOM mark должен сделать все UTF-8 по умолчанию. Однако, если это не так, и у вашего редактора нет настроек при установке знака спецификации, вам нужно будет использовать это как первую строку вашего cfm.

<cfprocessingdirective pageEncoding="utf-8"> 
+0

Я использую Sublime Text 2, и я сделал File-> Save With Encoding-> UTF-8, но не повезло. EDIT: Я должен уточнить, что сам файл .cfm действительно является кодировкой UTF-8, но это не влияет на вывод. – Michael

+0

Я только что добавил директиву обработки, и это работает. Спасибо. Знаете ли вы, есть ли глобальная настройка для установки всего приложения? (Мне не хотелось бы включать эту строку на каждую страницу на моем сервере.) – Michael

+1

'UTF-8 с BOM' в Sublime Text 2? http://blog.toshredsyousay.com/post/27543408832/how-to-add-or-remove-a-byte-order-mark – Henry

Смежные вопросы