Предложения по чтению данных из excel в .net c #

2

Мне нужно прочитать данные из файлов excel в моем приложении winforms С#. Любые рекомендации по хорошим компонентам для этого? Я использовал syncfusion несколько лет назад, и это, казалось, делало трюк.

Там будет куча строк заголовков, которые мне нужно пропустить (поэтому прямой подход ADO не будет работать легко), а затем таблица данных со стандартными столбцами, но с переменным числом строк.

Я буду накачивать данные в db SQL Server после его чтения, но, вероятно, перед этим нужно выполнить проверку и т.д.

спасибо!

Теги:
excel
import-from-excel

9 ответов

0
Лучший ответ

В конечном счете мы выбрали Syncfusion XLSIO, который хорошо работает.

Спасибо за другие предложения.

2

SpreadsheetGear для .NET будет делать это.

Вы можете увидеть образцы ASP.NET с С# и источником VB здесь и загрузить бесплатную пробную версию здесь, если вы хотите попробовать.

Отказ от ответственности: у меня есть SpreadsheetGear LLC

1

В настоящее время мы используем Flexcel. В нем есть несколько полезных функций, включая инструмент для чтения электронной таблицы и создания необходимого кода С# (или VB или Delphi) для создания этого листа с использованием их набора инструментальных средств - он упрощает проектирование листа. Лицензирование не было дорогостоящим (лицензия сайта для разработчиков, свободное перераспределение).

Единственное, что противно - совместимость XLSX (родной формат Excel 2007) "сейчас скоро".

1

Использование ASPOSE Tools

Использование ADO.NET

Вам нужна графическая поддержка?

  • 0
    не нужна графическая поддержка - я предполагаю, что вы имеете в виду чтение изображений?
  • 0
    да, а также графики и т. д.
1

Im, используя компонент ComponentOne XLS прямо сейчас. Он довольно стабилен и делает работу. Я также использую его для интеграции данных.

Я также хотел сделать несколько отчетов xls, однако API не поддерживает полный стек excel (даже не запускает экземпляр excel), поэтому мне пришлось переходить на Mirosoft.Office.Interop

1

вы также можете использовать LINQ to XML, см. ссылку ниже...

Видеоурок

1

Один из вариантов: MS Office Wrapper для .NET

0

Прочитайте это сообщение в блоге по чтению и написанию электронных таблиц Excel.

Чтение и запись таблиц Excel

  • 0
    Это предполагает прямой подход ADO, но я бы предпочел, чтобы компонент помог с некоторыми сложностями.
0

Вы можете сделать что-то вроде этого:

// Connection String to Excel Workbook
string excelConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileName + ";Extended Properties=\"Excel 8.0;HDR=YES;\"";

OleDbDataAdapter oleDbDataAdapter = new OleDbDataAdapter("Select * FROM [Sheet1$]", excelConnectionString);

DataSet dataSet = new DataSet();

oleDbDataAdapter.Fill(dataSet);

Также см. "SqlBulkCopy"

  • 0
    он хотел сделать проверку
  • 1
    Если у вас есть набор данных (т. Е. Все строки на листе Excel), строки можно пропустить / игнорировать / отклонить / записать в журнал с помощью счетчиков (если файлы известны / непротиворечивы) и проверки каждой строки / столбца.
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню