ASP / VBScript ServerXmlHttp Кодировка - PullRequest
3 голосов
/ 18 марта 2010

Я получаю RSS-канал из удаленного местоположения, используя ServerXmlHttp:

Dim httpRequest
set httpRequest = server.createObject("Msxml2.ServerXMLHTTP.6.0")
httpRequest.open "GET", "http://www.someurl.com/feed.xml", false
httpRequest.send()
response.write httpRequest.responseXML.xml

Однако где-то вдоль линии должны быть проблемы с кодировкой, как я вижу ???? где должны быть некоторые японские символы. У кого-нибудь есть рекомендации по работе с ServerXmlHttp?

Спасибо.

Ответы [ 3 ]

3 голосов
/ 19 февраля 2011

После нескольких часов исследования вот мои результаты:

Не работает:

<%@ Language=VBScript Codepage=65001 %>

И вместо правильных специальных символов он показывает вопросительные знаки, черные вопросительные знаки.

Но это работает !!

Response.CodePage = 65001

Я также включил

Response.Charset = "UTF-8"
response.AddHeader "Content-Type", "text/html;charset=UTF-8"

Окончательный результат:

<%@ Language=VBScript %>
<%
Dim xmlhttp
Set xmlhttp = CreateObject("Msxml2.ServerXMLHTTP")

xmlhttp.open "GET", "http://www.sapo.pt", 0
xmlhttp.send ""
Dim pagina

response.AddHeader "Content-Type", "text/html;charset=UTF-8"
Response.CodePage = 65001
Response.Charset = "UTF-8"


pagina = xmlhttp.responseText
Response.Write pagina
Set xmlhttp = Nothing 
%>
2 голосов
/ 14 апреля 2010

Здесь есть несколько возможных проблем.

  1. Какая кодовая страница и кодировка используются вашей страницей ASP?

Это можно установить с помощью директивы <% @ CodePage = xxxxx%> или Response.CodePage и Response.Charset.

  1. Что такое кодировка XML-файла?

Классический ASP имеет общеизвестно плохую поддержку этих вещей, и самый безопасный вариант - придерживаться одной кодировки, предпочтительно UTF-8 (CodePage 65001).

0 голосов
/ 18 марта 2010

При просмотре на неструктурированной веб-странице браузер может использовать неправильную кодировку.

Когда XML загружается в синтаксический анализатор, такой как XMLDOM, кодировка должна соблюдаться и отображаться правильно.

См. Кодировка XML для получения дополнительной информации.

...