Преобразование XMLDocument в XLS с использованием XSLT в C # без Excel - PullRequest
0 голосов
/ 22 августа 2011

Я хотел бы преобразовать свой XMLDocument, содержащий то, что вы бы назвали простым содержимым XML, в файл XLS, возможно, используя XSLT (судя по тому, что я нашел до сих пор), чтобы преобразовать данные, и я хотел бы, чтобысохраните созданный файл как файл xls, который будет открыт в Excel, при этом не имея возможности использовать Excel в процессе создания этого файла (таким образом, не используя MS.Office.Interop.Excel из того, что я слышал).Как именно я это сделаю и какие классы я буду использовать для создания этого документа?

Любая помощь по этому вопросу будет принята с благодарностью!

Спасибо,

Деннис

Ответы [ 3 ]

2 голосов
/ 22 августа 2011

Вероятно, ваша лучшая ставка - NPOI , порт .NET библиотеки Apache POI.

1 голос
/ 22 августа 2011

Вы не можете использовать XSLT для создания файла XLS, потому что XLS - это двоичный формат.
Если вы говорите о ExcelML, это можно сделать.Если вы хотите сделать это вручную, я думаю, что лучший способ начать это: Создайте файл ExcelML, используя Excel, который выглядит так, как вам нужно.Откройте этот файл в текстовом редакторе и проанализируйте его.Кроме того, необходимо загрузить ссылку в формате (Открыть справку -> OfficeXMLSDK.chm).

0 голосов
/ 22 августа 2011

Для преобразования XML в Excel XLS требуется 3 раза.
- Если макет файла XLS прост, просто преобразуйте XML в таблицу HTML и загрузите в Excel (либо из файла на диске, либо по HTTP-ответу),Это работает во многих случаях, однако имейте в виду, что объединение столбцов / строк действительно сбивает с толку Excel.
- Если у вас сложный макет с большим количеством форматирования / рабочих таблиц, перейдите в OfficeXMLSDK, это довольно сложно с множеством пространств имен - если выиметь Excel на сервере, создать шаблон документа в Excel и использовать Excel.Interop

...