Загрузить файл Excel и извлечь данные - asp.net mvc 3

Мне интересно, как извлечь данные из файла excel 2007? Я использую asp.net mvc 3. Мой план состоит в том, чтобы иметь раздел загрузки, который вы выбираете файл и нажимаете upload. После этого я понятия не имею, какой это будет формат или что мне нужно сделать, чтобы извлечь значения.

спасибо

4 ответов


после загрузки электронной таблицы и сохранения ее в файл на веб-сервере довольно легко использовать LINQ для выбора строк из электронной таблицы. Проверьте для получения дополнительной информации.

http://code.google.com/p/linqtoexcel/


самый простой способ прочитать excel spread sheets IMO-использовать DataAdapter и oledb-соединение, как показано в этом пример проекта Код. Хорошо, что у этого нет никаких зависимостей от com или библиотек MS office.


для чтения файлов Excel я научился любить Koogra. Это библиотека с открытым исходным кодом, которая читает файлы xls и xlsx и очень проста в использовании.

http://sourceforge.net/projects/koogra/


я использовал NPOI и он довольно прост в использовании:

Using Xlfile As FileStream = New FileStream(FileName, FileMode.Open, FileAccess.Read)
    Using XLBook As HSSFWorkbook = New HSSFWorkbook(Xlfile)
        Using XLSheet As NPOI.SS.UserModel.Sheet = XLBook.GetSheetAt(0)

            Dim CurrentRow As NPOI.HSSF.UserModel.HSSFRow
                        Dim CurrentCell As NPOI.SS.UserModel.Cell
                        Dim RowEnum As IEnumerator = XLSheet.GetRowEnumerator()

            While RowEnum.MoveNext
                          If (RowEnum.Current IsNot Nothing) Then
                              CurrentRow = TryCast(RowEnum.Current, NPOI.HSSF.UserModel.HSSFRow)
                    Select Case CurrentCell.CellType
                        Case NPOI.SS.UserModel.CellType.STRING
                            ' CurrentCell.StringCellValue
                        Case NPOI.SS.UserModel.CellType.NUMERIC
                            ' CurrentCell.NumericCellValue.ToString()
                    End Select
            End While
        End Using
    End Using
    Xlfile.Close()
End Using