博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# 读取Excel
阅读量:7069 次
发布时间:2019-06-28

本文共 2175 字,大约阅读时间需要 7 分钟。

直接添代码:

public void connExcel(string strPath)        {            //string strConn = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + strPath + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1';";            string strConn = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + strPath + ";Extended Properties='Excel 12.0;HDR=YES;IMEX=1';";                        OleDbDataReader myDataReader = null;            OleDbConnection myOleDbConnection = new OleDbConnection(strConn);            OleDbCommand myOleDbCommand = new OleDbCommand("SELECT * FROM [Sheet1$]", myOleDbConnection);            try            {                myOleDbConnection.Open();                myDataReader = myOleDbCommand.ExecuteReader();                while (myDataReader.Read())                {                    Console.WriteLine("序号:" + myDataReader.GetValue(0));//列1                    Console.WriteLine("标题:" + myDataReader.GetValue(1));//列2                    Console.WriteLine("预期结果:" + myDataReader.GetValue(2));//列3                }            }            catch (Exception ex)            {                Console.WriteLine(ex.ToString());            }            finally            {                // Always call Close when done reading.                if (myDataReader != null)                    myDataReader.Close();                // Close the connection when done with it.                if (myOleDbConnection != null)                    myOleDbConnection.Close();            }        }
View Code

 

遇到问题:

1.open时,报“找不到可安裝的ISAM解決方法”

解决方法:'Excel 8.0;HDR=Yes;IMEX=1;'这个要用单引号引起来

2.报错:外部表不是预期的格式错误

错误原因1: 由于Excel 97-2003的连接格式与Excel 2010 的 不同造成。

解决方法:

//2003(Microsoft.Jet.Oledb.4.0)

string strConn = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'", excelFilePath);

//2007 , 2010(Microsoft.ACE.OLEDB.12.0)

string strConn = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties='Excel 12.0;HDR=Yes;IMEX=1;'", excelFilePath);

3.Access有密碼設置時,當用C#連接Access Database時可能會出現"找不到可安裝的ISAM"。

解决方法:string dsn = "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:DataBase Password=123;Data Source=C:\\...\\*.mdb";

转载地址:http://ugqll.baihongyu.com/

你可能感兴趣的文章
算法之旅
查看>>
string.xml中的字符添加空格
查看>>
CF 85E Guard Towers——二分图染色
查看>>
C#创建datatable (转)
查看>>
问题小结
查看>>
6,视图和路由
查看>>
空链接推荐用"###"。
查看>>
BASE64编码和解码(VC源代码) 并 内存加载 CImage 图像
查看>>
A*算法 (MATLAB) -路径搜索
查看>>
HTML <form> 标签的 enctype 属性
查看>>
git从自己账号切换到公司的账号,剪项目失败
查看>>
go语言的“MSDN”(ubuntu12 && 通过apt-get安装的go语言)
查看>>
sqlmap常用技巧
查看>>
python多进程运行测试用例的写报告为空的问题与解决
查看>>
关于Python的数据分析工具
查看>>
supervisor 配置记录
查看>>
高效配置Linux代理服务器 Squid介绍
查看>>
linux下IPTABLES配置详解(转)
查看>>
今日工作情况4
查看>>
git中加入中文时,乱码
查看>>