transformNode и кодировка
От: vovka777  
Дата: 29.07.02 07:02
Оценка:
Имеется xsl файл со следующим заголовком
<?xml version="1.0" encoding="Windows-1251"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ms="urn:schemas-microsoft-com:xslt" xmlns:vbs="urn:schemas-yoursite-com:vbs" version="1.0">
<xsl:output method="html" encoding="Windows-1251"/>
и xml файл с таким заглолвком
<?xml version="1.0" encoding="Windows-1251"?>

после выполнения transformNode над этими файлами с msxml4 получаем html файл с с таким заголовком
<META http-equiv="Content-Type" content="text/html; charset=UTF-16">
хотя на самом деле везде кодировка вин1251.
Как сделать, чтобы кодировка в заголовке html стояла вин1251?
Re: transformNode и кодировка
От: joker6413  
Дата: 10.06.03 13:19
Оценка:
Здравствуйте, vovka777, Вы писали:

V>Имеется xsl файл со следующим заголовком

V><?xml version="1.0" encoding="Windows-1251"?>
V><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ms="urn:schemas-microsoft-com:xslt" xmlns:vbs="urn:schemas-yoursite-com:vbs" version="1.0">
V><xsl:output method="html" encoding="Windows-1251"/>
V>и xml файл с таким заглолвком
V><?xml version="1.0" encoding="Windows-1251"?>

V>после выполнения transformNode над этими файлами с msxml4 получаем html файл с с таким заголовком

V><META http-equiv="Content-Type" content="text/html; charset=UTF-16">
V>хотя на самом деле везде кодировка вин1251.
V>Как сделать, чтобы кодировка в заголовке html стояла вин1251?

Два способа:

1. Используй transformNodeToObject xslDoc, Response

2. Хакинг forever:
result = source.transformNode(Style)
result = replace(result, "charset=UTF-16", "charset=ISO-8859-1")
Re[2]: transformNode и кодировка
От: Аноним  
Дата: 11.06.03 05:55
Оценка:
Здравствуйте, joker6413, Вы писали:

J>2. Хакинг forever:

J>result = source.transformNode(Style)
J>result = replace(result, "charset=UTF-16", "charset=ISO-8859-1")

А проку? result — это переменная BSTR. А в BSTR строка по определению всегда в UTF-16.
Re: transformNode и кодировка
От: Аноним  
Дата: 13.06.03 10:56
Оценка:
Здравствуйте, vovka777, Вы писали:

V>Имеется xsl файл со следующим заголовком

V><?xml version="1.0" encoding="Windows-1251"?>
V><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ms="urn:schemas-microsoft-com:xslt" xmlns:vbs="urn:schemas-yoursite-com:vbs" version="1.0">
V><xsl:output method="html" encoding="Windows-1251"/>
V>и xml файл с таким заглолвком
V><?xml version="1.0" encoding="Windows-1251"?>

V>после выполнения transformNode над этими файлами с msxml4 получаем html файл с с таким заголовком

V><META http-equiv="Content-Type" content="text/html; charset=UTF-16">
V>хотя на самом деле везде кодировка вин1251.
V>Как сделать, чтобы кодировка в заголовке html стояла вин1251?

я в XSLT использую такую вещь:
<?xml version="1.0" encoding="windows-1251"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">
<xsl:output method="xml" version="1.0" encoding="windows=1251" indent="yes" omit-xml-declaration="yes"/>
..........
</xsl:stylesheet>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.