您的位置:首页 > 编程语言 > C#

C#与Excel互操作

2006-09-08 18:18 253 查看
到网上搜了一下,asp.net可以象读Access数据库一样读取Excel:
string source=file_excel.Value;//execel文件的完整路径
string sqlconn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+source+";Extended Properties=Excel 8.0";
string sql = "SELECT * FROM [Sheet1$]";
System.Data.OleDb.OleDbCommand oldcom = new System.Data.OleDb.OleDbCommand(sql,new OleDbConnection(sqlconn));
System.Data.OleDb.OleDbDataAdapter oleda = new System.Data.OleDb.OleDbDataAdapter(oldcom);
System.Data.DataSet ds = new DataSet();
oleda.Fill(ds,"[Sheet1$]");
lbl_title.Text=ds.Tables[0].TableName;
DataGrid1.DataSource=ds;
DataGrid1.DataMember="[Sheet1$]";
DataGrid1.DataBind();

老大让组员发了个控件过来,Aspose。
仔细读了一下DemoCode。还不错
对于Excel中的各个Sheet,Excel类有个索引包含了这些Sheet。
然后WorkSheet类又有自自身的属性:Cell等等。
这样就可以遍历一张sheet里的内容了。
但是没有发现与列相关的属性,这个有点麻烦,看来这时候还得用第一种方式来读比较方便

另外,ExcelDesigner类还可以根据Excel模板再结合数据来生成新的Excel文件!

calvin提出不要使用第三方控件。。。。
于是决定使用ms的interop.Excel
下面是MSDN中介绍c#操作Excel的一篇文章:
如何使用 Visual C# 2005 或 Visual C# .NET 向 Excel 工作簿传输数据
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: