powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Снова о кодировках XML->HTML
10 сообщений из 10, страница 1 из 1
Снова о кодировках XML->HTML
    #35652156
Smr_guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ситуация: над преобразовать xml в html.

Сделал соответствующий xsl файл в котором прописал <xsl:output method="html" encoding="windows-1251" indent="yes"/>, в заголовке исходного xml написано
<?xml version="1.0" encoding="windows-1251"?> тем не менее, процессор
методично игнорирует кодировку и в выходном html получаю <META
http-equiv="Content-Type" content="text/html; charset=UTF-16">.

Трансформирую DOM'ом:

Set xmlTree = CreateObject("Msxml2.DOMDocument")
xmlTree.async = false
xmlTree.load(xmlFName)

Set xsltTree = CreateObject("Msxml2.DOMDocument")
xsltTree.async = false
xsltTree.load(xsltFName)

WriteToFile htmlFName, xmlTree.transformNode(xsltTree)

Буду благодарен, за прояснение ситуации.
...
Рейтинг: 0 / 0
Снова о кодировках XML->HTML
    #35652300
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это документированное поведение.
...
Рейтинг: 0 / 0
Снова о кодировках XML->HTML
    #35652340
Smr_guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ок, поставлю вопрос иначе: что нужно сделать что бы в выходном html документе было бы <META http-equiv="Content-Type" content="text/html; charset=windows-1251"> а не <META http-equiv="Content-Type" content="text/html; charset=UTF-16">?
...
Рейтинг: 0 / 0
Снова о кодировках XML->HTML
    #35653186
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так и явно пропишите в XSL нужный <meta>

С уважением, Vasilisk
...
Рейтинг: 0 / 0
Снова о кодировках XML->HTML
    #35653400
Smr_guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пробовал,
Код: plaintext
1.
2.
3.
4.
5.
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
	<xsl:output method="html" encoding="windows-1251" indent="yes"/>	
		<xsl:template match="/">
			<html>
				<head>
					<META http-equiv="Content-Type" content="text/html; charset=windows-1251"/>

не помогает, тогда в выходном файле получаю следующее:
Код: plaintext
1.
2.
3.
<html>
	<head>
		<META http-equiv="Content-Type" content="text/html; charset=UTF-16">
		<META http-equiv="Content-Type" content="text/html; charset=windows-1251">
Браузер при таком раскладе подцепляет UTF-16, может проблема в msxml?
...
Рейтинг: 0 / 0
Снова о кодировках XML->HTML
    #35654055
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
лично я делаю method="xml", пишу meta вручную, трансформирую в документ через XSLProcessor, сохраняю через save.
...
Рейтинг: 0 / 0
Снова о кодировках XML->HTML
    #35654065
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хотя для xhtml1.1 meta вроде необязательно прописывать.
...
Рейтинг: 0 / 0
Снова о кодировках XML->HTML
    #35655692
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Немного ввел в заблуждение, нужно не <meta> прописать, а <xsl:output>
[src]<xsl:output method="html" media-type="text/html; charset=windows-1251" encoding="windows-1251" indent="yes"/>[src]

P.S. Решение нашел за две минуты поиска в гугле
http://xpoint.ru/forums/internet/XML/thread/40249.xhtml

С уважением, Vasilisk
...
Рейтинг: 0 / 0
Снова о кодировках XML->HTML
    #35656977
Smr_guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Огромное спасибо, действительно помогло!
...
Рейтинг: 0 / 0
Снова о кодировках XML->HTML
    #35716363
Smr_guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Только счас обратил внимание, что решение описаной проблемы оказалось "условным", т.к. теперь, прописав
Код: plaintext
<xsl:output method="html" version="4.0" media-type="text/html; charset=windows-1251" encoding="windows-1251" indent="yes"/>
в выходном html получаю две кодировки, хотя и побеждает "windows-1251"
Код: plaintext
<META http-equiv="Content-Type" content="text/plain; charset=windows-1251; charset=UTF-16">
может проблема глубже, в недрах msxl?
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Снова о кодировках XML->HTML
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]