有没有办法在 VB.Net 上使用 OleDbDataAdapter 提取 excel 的文化?

问题描述

我一直在尝试获取有关 excel 单元格及其格式日期的字符串或类型信息。

例如,如果单元格中有不同的格式,我希望能够找到格式,以便获得正确的日期。 10/11/2000 可能会有所不同,具体取决于月份是否为第一个月。由于每行都相同,因此获得整个工作表的文化也可以是一个解决方案。

不幸的是,我似乎没有找到任何回应。

到目前为止我尝试过的是这个

Dim ds As New DataSet()
Dim cn As OleDbConnection

Dim fileHasHeader As String = "NO"
Dim connectionString As String = String.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=""Excel 12.0;HDR={1};IMEX=1""",_filePath,fileHasHeader)

        cn = New System.Data.OleDb.OleDbConnection(connectionString)

                If _file Is Nothing Then
                    Try
                        Me.ExportXLSFile()
                        cn.Open()
                        Dim tablename = cn.GetSchema("Tables").Rows(0)("TABLE_NAME")
                        Dim genious = cn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,{})
                        Dim geinous2 = genious.Locale.DateTimeFormat.LongDatePattern

我们的想法是,如果区域设置不同,则使用 LongDatePattern 可能会有一些差异,但 LongDatePattern 似乎获取相同的结果(“dddd,dd MMMM yyyy”)。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)