Мне нужно создать файл excel через C#. Я прочитал несколько мест, которые создают XML-документ - это самый простой способ сделать это? Мне нужно иметь несколько названных вкладок и иметь возможность указывать, что определенные ячейки - это текст, дата, число и т. Д. Любые предложения или хорошие примеры?Создание файлов Excel с C#
ответ
Вам понадобится System.IO.Packaging API - это позволит вам сгенерируйте документы .xlsx, как описано в Inserting Values into Excel 2007 Cells. Формат Excel 2007 также может использоваться Excel 2003 и XP с установленным бесплатным Microsoft Office Compatibility Pack.
Взгляните на NPOI:
Это также довольно хорошо освещена в другом месте на SO:
Мы используем набор под названием Aspose на работе. Он имеет большой полнофункциональный компонент «Ячейки», который творит чудеса для нас.
http://epplus.codeplex.com/ - Взгляните на этот проект, его бины очень помогают мне. Я нашел эту ссылку по адресу: https://stackoverflow.com/questions/170652/whats-the-best-net-library-for-parsing-and-generating-excel-spreadsheets
инструментов Visual Studio для офиса является хорошим способом сделать это
Это удручающе трудно сделать, как рекомендовано механизм Microsoft, включает в себя использование Office, который отлично работает на рабочем столе, но бесполезен для Интернета.
Двоичный формат .xls
файлов уместность, поэтому Microsoft представила .xlsx
OpenXml файлов в Office 2007.
The .xslx
якобы просто - это просто почтовый контейнер полон файлов XML. Вы можете открыть его с помощью System.IO.Packaging
и отредактировать его с помощью System.Xml
. Есть даже пакет совместимости для более старых версий офиса.
К сожалению, это просто не так - формат .xslx
- horrible beyond words.
Похоже, что они взяли 16-битный оптимизированный двоичный формат .xls
(разработанный первоначально для Windows 3.1) и сериализовали его вместо XML вместо XML. Затем они добавили действительно глупые изменения, например, комментарии к ячейкам на самом деле VML - формат, предположительно упавший с IE5! Они также добавили тонну магических чисел и метаданных в XML, чтобы вы не могли использовать какие-либо преобразования на нем, поэтому вы разбираете эту присоску вручную.
Наконец, они сделали его полным ослом для отладки, и мы регулярно находим файлы .xslx
, которые пакет совместимости сообщает как поврежденный (без объяснений причин), но эта последняя версия Office может открыться нормально.
Для этого есть отличная библиотека с открытым исходным кодом: SpreadsheetLight. Это очень хорошая библиотека, но все, что требует, чтобы вы копались и распространяли файлы .xslx
, будет болезненным.
- 1. Создание файлов Excel с VB6
- 2. VB2010 Создание файлов Excel
- 3. . NET Создание файлов Excel
- 4. Чтение файлов Excel с C#
- 5. Создание больших файлов Excel с помощью PHPExcel
- 6. Создание файлов, совместимых с Excel, из Mathematica
- 7. Создание файлов Excel с # в столбце Имя
- 8. C# Объединение файлов Excel
- 9. Создание файлов Excel (.xlsx) в Cocoa
- 10. Создание файлов в C++
- 11. C# Создание файлов WPF
- 12. Создание 2 файлов excel Java POI
- 13. Создание программ в объекте-c для файлов excel
- 14. Создание файлов Excel в ASP на IIS7.5
- 15. Создание файлов путем чтения листа excel
- 16. Создание нескольких вкладок Excel из текстовых файлов
- 17. Создание надстройки для Excel с использованием C#
- 18. создание файла excel с помощью приложения C#
- 19. Импорт файлов excel в C#
- 20. Форматировать существующие листы файлов Excel с C#
- 21. Чтение файлов Excel с использованием C#
- 22. Создание файлов Excel XLS на iOS
- 23. Visual C# - Редактирование файлов Excel
- 24. C# 3.5 Чтение файлов Excel
- 25. Создание файлов Excel из списка имен с помощью vba
- 26. Создание XML-файлов Excel из Python
- 27. Создание файлов PDF с использованием C# 4?
- 28. C# - создание нескольких файлов с определенными именами
- 29. Создание файлов с использованием C#, как evernote
- 30. Создание .c-файлов и .h-файлов
@wcoenen -nice edits, thanks. – Murph
Есть ли какой-нибудь пример построения Excel с помощью 'System.IO.Packaging'? я не могу найти ничего в документации, которая касается Excel. –
@IanBoyd есть лучший способ (сейчас) посмотреть ClosedXML - который вы можете найти здесь: http://closedxml.codeplex.com/ – Murph