【问题标题】:ExcelDataReader for Visual Basic适用于 Visual Basic 的 ExcelDataReader
【发布时间】:2020-04-09 09:21:27
【问题描述】:

我正在尝试从 excel 文件的流中读取值,不幸的是,在从 NuGet 包安装 ExcelDataReaderExcelDataReader.DataSet 后,我无法创建类 IExcelDataReader。它也不读取 Import。

Imports System.IO
Imports ExcelDataReader
Public Class ExcelMng
    Public Function Values_GET(stream As Stream)
        Dim reader As IExcelDataReader
    End Function
End Class

Project's Code

发现错误:

'IExcelDataReader' 未定义。

我尝试过的事情:

相关信息:

  • 平台: .NET Framework 3.5。
  • 剩下要做的事情: 卸载 dll 包(我不太确定这意味着什么)。

【问题讨论】:

  • 您必须使用 ExcelReaderFactory.CreateReader()ExcelReaderFactory.CreateOpenXmlReader(),具体取决于 Excel 文件版本。 ExcelReaderFactory.Create...() 返回一个配置好的阅读器。要创建 Reader,请传递一个 Stream 对象和一个 New ExcelReaderConfiguration() 对象。不要直接使用接口。 -- 用Visual StudioNuGet Package Manager安装NuGet Packages(看你的NuGet版本是否支持包的3.3.0版本)
  • 也获得这个包:ExcelNumberFormat

标签: asp.net excel vb.net visual-studio exceldatareader


【解决方案1】:

我使用以下代码运行代码,效果很好。

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim reader As IExcelDataReader
        Dim stream = File.Open("D:\test.xlsx", FileMode.Open, FileAccess.Read)
        reader = ExcelDataReader.ExcelReaderFactory.CreateReader(stream)
        Dim conf = New ExcelDataSetConfiguration With {
            .ConfigureDataTable = Function(__) New ExcelDataTableConfiguration With {
                .UseHeaderRow = True
            }
        }
        Dim dataSet = reader.AsDataSet(conf)
        Dim dataTable = dataSet.Tables(0)
    End Sub

我注意到我们需要安装 .Net Framework 4.5 来运行这个程序。

【讨论】:

    猜你喜欢
    • 2010-12-29
    • 2012-11-11
    • 1970-01-01
    • 1970-01-01
    • 2023-03-30
    • 2010-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多