Как создать RTF с использованием XML XSLT и C # - PullRequest
1 голос
/ 29 января 2011

Я создал документ xml и документ xslt, и теперь я хочу создать слово doc / rtf, используя их, используя c #.

Я нашел следующий код в Интернете, однако не могу найти способ его использовать, потому что я не использую наборы данных. Я просто хочу, чтобы программа прочитала xml и xslt соединили их и создали документ Word

Любая помощь будет очень признательна

DataSet ds;

    XmlDataDocument xmlDoc;

    XslCompiledTransform xslTran;

    XmlElement root;

    XPathNavigator nav;

    XmlTextWriter writer;

    try

    {

        //Create the DataSet from the XML file

        ds = new DataSet();

        ds.ReadXml("Employee.xml");

        //Create the XML from the DataSet

        xmlDoc = new XmlDataDocument(ds);

        //Load the XSLT for Transformation

        xslTran = new XslCompiledTransform();

        xslTran.Load("Employee.xslt");

        //Determine the Root object in the XML

        root = xmlDoc.DocumentElement;

        //Create the XPath Navigator to navigate throuth the XML

        nav = root.CreateNavigator();

        //First delete the RTF, if already exist

        if (File.Exists("Employee.rtf"))

       {

            File.Delete("Employee.rtf");

       }

        //Create the RTF by Transforming the XML and XSLT

        writer = new XmlTextWriter("Employee.rtf", System.Text.Encoding.Default);

        xslTran.Transform(nav, writer);

        //Close the Writer after Transformation

        writer.Close();

        //Release all objects

        writer = null;

        nav = null;

        root = null;

        xmlDoc = null;

        ds = null;

        MessageBox.Show("Document created successfully.....");

    }

    catch (Exception ex)

    {

        writer = null;

        nav = null;

        root = null;

        xmlDoc = null;

        ds = null;

        MessageBox.Show(ex.StackTrace);

    }

}

1 Ответ

1 голос
/ 29 января 2011

Чтение http://msdn.microsoft.com/en-us/library/0610k0w4.aspx, рассказывает, как использовать XslCompiledTransform.Если вы хотите преобразовать из файла и вывести файл, то все, что вам нужно, это

XslCompiledTransform proc = new XslCompiledTransform();
proc.Load("stylesheet.xslt");
proc.Transform("input.xml", "output.rtf");
...