Форум: "Начинающим";
Текущий архив: 2011.05.08;
Скачать: [xml.tar.bz2];
ВнизtransformNodeToObject и кодировка XML Найти похожие ветки
← →
RWolf © (2011-02-02 16:44) [0]Задача — получить отформатированный отступами файл XML в нужной кодировке. Кодировка должна быть прописана в заголовке XML.
Решаю следующим образом:
procedure SaveIndentedXML(doc:IXMLDOMDocument2);
const
xslText=
"<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">"#13#10+
" <xsl:output method="xml" indent="yes"/>"#13#10+
" <xsl:template match="@* | node()">"#13#10+
" <xsl:copy>"#13#10+
" <xsl:apply-templates select="@* | node()"/>"#13#10+
" </xsl:copy>"#13#10+
" </xsl:template>"#13#10+
"</xsl:stylesheet>";
var
xsl,res:IXMLDOMDocument2;
begin
xsl:=CoDOMDocument30.Create;
xsl.async:=False;
xsl.loadXML(xslText);
res:=CoDOMDocument30.Create;
res.async:=False;
res.validateOnParse:=True;
doc.transformNodeToObject(xsl,res);
res.save("res.xml");
end;
Если применить transformNodeToObject к XML-документу, то получаем результат в кодировке UTF-16; можно ли заставить его сохраняться в другой кодировке?
Манипуляции с копированием XML в текстовую строку с последущей конвертацией и обратным присвоением не подходят, т.к. портят processing instructions < ? ... ? >.
← →
Медвежонок ХМЛ © (2011-02-02 17:24) [1]<xsl:output ..... encoding="UTF-8" ....../>
http://www.w3schools.com/xsl/el_output.asp
← →
RWolf © (2011-02-02 17:36) [2]
> Медвежонок ХМЛ © (02.02.11 17:24) [1]
Спасибо.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2011.05.08;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.003 c