Мне нужно экспортировать данные отчета, которые могут перерасти до 300 000 строк.C# Преобразование csv в excel 2007
Для обеспечения высокой скорости я использовал библиотеку this для создания файла csv. Единственная проблема, с которой я столкнулся сейчас, заключается в том, что ширина столбца не адаптирована к содержимому самой широкой ячейки, она обрезается до тех пор, пока я не буду вручную расширять столбец.
Я думал, что, возможно, вариант состоял в том, чтобы преобразовать файл csv в файл excel, но я не смог найти решение anywere!
Один вариант использует OpenXML, но, по крайней мере то, что я знаю, что это не работает для Excel 2007
Другой вариант должен был работать с Interop, но он также имеет свои проблемы .. когда я пытаюсь создать объект Application, он бросает исключение:
"Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80070005 Access is denied." (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)).
И решения, которые я нашел, не может быть реализована на клиенте я работаю, по соображениям безопасности.
Я бегу из вариантов ..
Спасибо за вашу помощь !!!
Open XML SDK, безусловно, будет работать в Excel 2007, так как он поддерживает формат Open XML («.xlsx»). У вас также есть возможность использовать библиотеки [EPPlus] (https://epplus.codeplex.com/) и [NPOI] (https://npoi.codeplex.com/) (оба из которых могут генерировать «.xlsx» файлы и немного проще в использовании, я слышу). – mason