Vicky Siddharth Ответов: 2

Как преобразовать xmldocument в XLS с помощью XSLT в C#


I am trying to Transform the XSLT,XSL file into .xsl . So i tried below coding



Below Coding is working fine. But when i open the created Excel sheet it is opening in XML SPREAD SHEET 2003. But it should be open in Excel 97-2003 Workbook. How can i achieve ?


Что я уже пробовал:

строки MyXmlPath = значение reportpath, равное + @"\XML\chennai.xml";
набор данных.Метода Writexml(MyXmlPath);
строки MyExcelPath = значение reportpath, равное + @"\Report\chennai.xls";

XPathDocument xmlDoc = новый XPathDocument(MyXmlPath);
Класс xslcompiledtransform класса xsltransform = новый класс xslcompiledtransform();
XSLTransform. Load(AppBasePath + @"\Master\XSLT\chennai.xslt");
Класса xsltransform.Transform(MyXmlPath, MyExcelPath);

Kornfeld Eliyahu Peter

Непонятный...
XLS-это двоичный файл! формат для старых файлов Excel, так как же вы собираетесь создать его с помощью преобразования XML?

Vicky Siddharth

Хорошо. Есть ли какие-либо другие методы для создания .xls путем объединения xslt и xml ?

Kornfeld Eliyahu Peter

Нет. Нет никакого способа создать какой-либо двоичный (включая старый Excel) файл с использованием XML и преобразования вообще...
На самом деле (поскольку формат является проприетарным) единственным способом является использование инструментов Microsoft...

Vicky Siddharth

Что вы подразумеваете под Microsoft Tool? ссылаться на какие-нибудь dll-файлы или что?

Kornfeld Eliyahu Peter

Именно так. Обратитесь к офисным библиотекам взаимодействия и напишите какой-нибудь уродливый код...
Однако учтите, что сама Microsoft не поддерживает старый Excel, поэтому вы, вероятно, можете сосредоточиться на новом формате, основанном на XML...

Vicky Siddharth

Какие-нибудь ссылки для ссылки ?

2 Ответов

Рейтинг:
1

Patrice T

вы не можете открыть файл. xlsx (XML-файл excel) в excel 2003, поскольку формат. xlsx был введен в Excel 2007.
Тебе нужно установить расширение для MS в Excel, которые позволят Excel 2003 для чтения .формат XLSX (формат Excel 2007).