В одном из наших приложений ASP.NET в C # мы берем определенный набор данных (SubSonic collection) и экспортируем его в Excel. Мы также хотим импортировать файлы Excel в определенном формате. Я ищу библиотеку, которую я могу использовать для этой цели.
Требования:
- Файлы Excel 2007 (поддерживает ли Excel 2003 более 64 тыс. Строк? Мне нужно больше.)
- Не требует Excel на сервере
- Принимает типизированную коллекцию и, если может, пытается поместить числовые поля как числовые в Excel.
- Хорошо работает с большими файлами (от 100К до 10М) - достаточно быстро.
- Не вылетает при экспорте GUID!
- Не стоит дерьмо денег (нет корпоративной библиотеки, как Aspose). Бесплатно всегда здорово, но может быть коммерческая библиотека.
Какую библиотеку вы рекомендуете? Вы использовали это для больших объемов данных? Есть ли другие решения?
Прямо сейчас я использую простой инструмент, который генерирует HTML, который загружается Excel позже, но я теряю некоторые возможности, плюс Excel жалуется, когда мы его загружаем. Мне не нужно генерировать диаграммы или что-то в этом роде, просто экспортируйте необработанные данные.
Я думаю о плоских файлах CSV, но Excel - это требование клиента. Я могу работать с CSV напрямую, если бы у меня был инструмент для конвертации в и из Excel. Учитывая, что Excel 2007 является форматом файлов на основе xml (и в формате zip), я предполагаю, что этот тип библиотеки должен быть легко найден. Тем не менее, для меня важнее всего ваши комментарии и мнения.
РЕДАКТИРОВАТЬ: по иронии судьбы, по моему мнению и после ответа с большинством голосов, лучшая библиотека импорта и экспорта в Excel не экспорт вообще. Это относится не ко всем сценариям, но к моему. Файлы XLS поддерживают только 64 тыс. Строк. XLSX поддерживает до 1М. Бесплатные библиотеки, которые я пробовал, показывают плохую производительность (одна секунда, чтобы загрузить одну строку, когда у вас есть 200k строк). Я не пробовал платные, потому что чувствую, что они завышены по цене, которую они предоставляют, когда все, что вам нужно, это быстрая процедура преобразования XLSX <-> CSV.