Кодовая страница 65001 и utf-8 — это одно и то же?

StackOverflow https://stackoverflow.com/questions/1629437

  •  06-07-2019
  •  | 
  •  

Вопрос

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!--#include file="conn.asp"-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Верен ли приведенный выше код?

Это было полезно?

Решение

Да.

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

Другие советы

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

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

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

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

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

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

response.codepage = 65001

кажется, что дает плохой результат, когда физический файл сохраняется как utf-8

В противном случае он работает так, как положено.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top