也就是说我程序生成的xml文件,怎么向文件里面加一句:
<?xml-stylesheet type='text/xsl' href='Log.xsl'?>

解决方案 »

  1.   

    最简单的方法,采用字符串处理,在<?xml version='1.0'>也就是第一个>后插入这个字符串即可。
      

  2.   

    这我想过,怎么插入?在TXmlDocunment.Version指定后写过一句
    TXmlDocunment.Xml.Add('<?xml-stylesheet type='text/xsl' href='Log.xsl'?>')
    xml是Tstrings
    但是报错,好像是说没有可用文件,因为我是最后才保存为文件的
      

  3.   

    var xml:IXMLDOMDocument;
      begin
        CoInitialize(nil);
        try
          xml:=CreateOleObject('MSXML2.DOMDocument') as IXMLDOMDocument;
          xml.loadXML('<?xml version="1.0"?><root/>');
          //创建处理器指令,并插到根节点前面:
          xml.insertBefore(
            xml.createProcessingInstruction('xml-stylesheet',' type="text/xsl" href="Log.xsl"'),
            xml.documentElement);
          xml.save('c:\1.xml');
        finally
          CoUninitialize();
        end;
      

  4.   

    谢谢 Eastunfail(龍子龍孫) (诚彼娘之非悦) 
    我原来是用IXMLDocument处理的,如果换成IXMLDomDocument的话,要改动的东西非常多
    有没有其他办法?
      

  5.   

    换汤不换药,呵呵~~~XMLDocument1.LoadFromXML('<?xml version="1.0"?><root/>');
    XMLDocument1.DOMDocument.insertBefore(  XMLDocument1.DOMDocument.createProcessingInstruction('xml-stylesheet',' type="text/xsl" href="Log.xsl"'),self.XMLDocument1.DocumentElement.DOMNode);
    XMLDocument1.SaveToFile('c:\1.xml');