Действительно ли кодовая страница 65001 и utf-8 является тем же самым?

Существует множество решений, в зависимости от Ваших требований распределения.

  1. Просто используют банку. Это предполагает, что у пользователя есть корректная установленная версия Java, иначе пользователь получит "исключения" версии формата файла класса. Это хорошо для внутреннего распределения в компании.

  2. Использование launch4j и установщик как NSIS. Это дает Вам намного больше контроля, хотя пользователь может все еще сделать глупый материал как удаление среды выполнения Java. Это - вероятно, самый популярный подход, и что я в настоящее время использую.

  3. Использование Webstart. Это также предполагает, что у пользователя есть корректная установленная версия Java, но намного легче начаться. Мой опыт состоит в том, что это хорошо для плотно управляемых сред интранета, но становится болью с большим развертыванием, потому что она имеет немного много странных отказов. Это может поправиться с новой сменной технологией в Java 1.7.

  4. Использование компилятор собственного кода как СТРУЯ Excelsior и распределяет как исполняемый файл или оборачивает его в установщике. Дорогой, и это обычно связывает Вас с немного более старой версией Java, и существует некоторая боль с динамической загрузкой класса, но ее очень эффективное для крупномасштабного внедрения, где необходимо минимизировать стычки поддержки.

45
задан casperOne 19 November 2011 в 05:09
поделиться

3 ответа

Да.

UTF-8 - это CP65001 в Windows (что является просто способом указания UTF-8 в устаревшей кодовой странице). Насколько я знаю, ASP может обрабатывать UTF-8, если указано таким образом.

49
ответ дан 26 November 2019 в 21:24
поделиться

Да, 65001 - это идентификатор кодовой страницы Windows для UTF-8, как описано на веб-сайте Microsoft . Википедия предлагает , что кодовая страница 128 IBM и кодовая страница 4110 SAP также являются индикаторами для UTF-8.

3
ответ дан 26 November 2019 в 21:24
поделиться

Ваш код правильный, хотя я предпочитаю устанавливать CharSet в коде, а не использовать метатег: -

<% Response.CharSet = "UTF-8" %>

Кодовая страница 65001 действительно относится к набору символов UTF-8. Вам нужно будет убедиться, что ваша asp-страница (и все ее включенные) сохранены как UTF-8, если они содержат какие-либо символы за пределами стандартного набора символов ASCII.

Указав атрибут CODEPAGE в блоке <% @, вы указывая, что все, что написано с использованием Response.Write, должно быть закодировано в указанную кодовую страницу, в данном случае 65001 (utf-8). Следует иметь в виду, что это не влияет на статический контент, который дословно пересылается байт за байтом в ответ. Отсюда и причина, по которой файл необходимо сохранить с использованием указанной кодовой страницы.

Свойство CharSet ответа устанавливает значение CharSet заголовка Content-Type. Это не влияет на то, как будет закодирован контент, он просто сообщает клиенту, какая кодировка принимается. Опять же, важно, чтобы его значение соответствовало фактической отправленной кодировке.

9
ответ дан 26 November 2019 в 21:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: