1

Тема: VBScript: Как сохранить информацию UTF-8 в ANSI? (MSXML2.XMLHTTP)

Доброго времени суток. Возникла такая проблема. Имеется скрипт для скачивания html кода страницы и сохранения его в txt.
Страница сохраняется в кодировке UTF-8, а сам VBS имеет ANSI. Начинаются проблемы с русскими буквами.

Можно ли сохранять html код страницы в ANSI? Заранее спасибо!

Код:


InetFile = "http://forum.script-coding.com/"
localFile = "html.txt"

Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP")
oXMLHTTP.Open "GET", InetFile, 0
oXMLHTTP.Send

Set oADOStream = CreateObject("ADODB.Stream")
oADOStream.Mode = 3
oADOStream.Type = 1
oADOStream.Open
oADOStream.Write oXMLHTTP.responseBody
oADOStream.SaveToFile localFile, 2

Set oXMLHTTP = Nothing
Set oADOStream = Nothing

И раз уж такое дело, то можно ли сделать так, что бы html код не сохранялся в txt, а записывался в переменную. Заранее спасибо!

2

Re: VBScript: Как сохранить информацию UTF-8 в ANSI? (MSXML2.XMLHTTP)

donotlie
В данном случае не имеет значения, что скрипт сохранён в ANSI. Код страницы тут записывается в бинарном виде.
В текстовом же виде страница возвращается свойством oXMLHTTP.Responsetext, если требуется его ещё обрабатывать, и для типа (Type) тогда уже придётся устанавливать 2.
Для установки кодировки требуется изменить свойство Charset, например: oADOStream.Charset = "ASCII"
P.S.: На форуме полно тем со скачиванием файла из сети, в т.ч. с помощью MSXML2.XMLHTTP, не поленитесь искать.

3

Re: VBScript: Как сохранить информацию UTF-8 в ANSI? (MSXML2.XMLHTTP)

Спасибо. Очень помог. Я кстати искал на форуме нечто похожее, но не смог найти.