2010-10-31 3 views
2

Есть ли свободные альтернативы использованию компонента «Microsoft Excel 12.0 Object Library» в приложении? Это делает работу, но она очень медленная. Я знаю, что есть коммерческие сторонние инструменты и интересно, есть ли что-нибудь быстро, но бесплатное программное обеспечение для выполнения задачи.Генерация XLSX в .NET - объектная библиотека Microsoft Excel бесплатная альтернатива

+1

Запустите код внутри Excel, чтобы избежать дорогостоящих непроизводительных COM-сбоев. VSTO - это оружие выбора. –

ответ

2

Microsoft предоставляет SDK Open XML, который используется для генерации формата XLSX (он не может генерировать более старые офисные форматы). Это для .NET и не имеет накладных расходов на COM. Это очень быстро, но API, ну, сложный. Документация, которая поставляется с ней, не слишком потрепана.

Вы можете скачать его здесь: http://msdn.microsoft.com/en-us/library/bb448854.aspx

1

Попробуйте проект LGPL лицензии, EPPlus. Поддерживает все виды функций Excel, включая диапазоны ячеек, стиль, схемы и защиту. Есть хорошая статья с образцами кода here - похоже, что у этого есть неплохой «здравомыслящий» API.

Это даже позволяет вам use Linq to enumerate cells.

+0

Следите за этой библиотекой. Я столкнулся с этой проблемой при работе с большими файлами в многопользовательской среде http://epplus.codeplex.com/workitem/14848, и по этой причине я дошел до этого вопроса в поисках замены для этого. –

0

Попробуйте использовать эту библиотеку с открытым исходным кодом: OfficeHelper. Он построен над вышеупомянутым Open XML SDK от microsoft, но у него есть несколько приятных функций, что упрощает создание базы данных xlsx в файлах xlsx.

Смежные вопросы