从excel读取超过255个字符

时间:2014-02-03 14:50:23

标签: c# excel

我正在尝试从excel中读取工作表数据(尝试过oldedb和odbc)并发现有255个字符的限制。 我尝试使用其他线程

中建议的Range对象
(SELECT * FROM [ref_MethodInput$A1:S362]) 

但仍然没有运气。所以除了使用互操作之外还有其他方法可以解决这个问题吗?注册表编辑也是不可取的,因为需要在所有客户端计算机中进行注册表编辑。

2 个答案:

答案 0 :(得分:0)

由于问题出在Jet Provider上,为什么不尝试在ODBC连接下列出的Microsoft Excel驱动程序。

Source

答案 1 :(得分:0)

以下代码为我工作。 从excel(.xls& .xlsx)文件导入数据(适用于超过255个字符的列值)。

using Excel;

        try
        {
            FileStream stream = File.Open(strFilePath, FileMode.Open, FileAccess.Read);
            IExcelDataReader excelReader = null;
            if (extension.Trim() == ".xls")
            {
                excelReader = ExcelReaderFactory.CreateBinaryReader(stream);
            }
            else if (extension.Trim() == ".xlsx")
            {
                excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);
            }
            excelReader.IsFirstRowAsColumnNames = true;
            DataSet result = excelReader.AsDataSet();

            excelReader.Close();
        }
        catch (Exception err)
        {
            mResult.Message = err.Message;
        }

下载nuget包:  1)PCLStorage(版本:1.0.2)  2)ExcelDataReader-DevNet45(版本:1.0.0.2)

Code reference