- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c读取e敏xcel
HYPERLINK /koon/archive/2011/06/29/2093140.html C# 读取Excel文件代码的几种方法
片段 1
using?System.Data.OleDb;...static?void?Main(){Application.Run(new?Form1());}private?void?Form1_Load(object?sender,?System.EventArgs?e){DataTable?myT=ExcelToDataTable(D:/文件/新武昌站点资料.xls,sheet1);String?mystr=myT.Rows[0][0].ToString();this.textBox1.Text=mystr;}public?static?DataTable?ExcelToDataTable(string?strExcelFileName,?string?strSheetName){//源的定义string?strConn?=?Provider=Microsoft.Jet.OLEDB.4.0;?+?Data?Source=?+?strExcelFileName?+?;?+?Extended?Properties=Excel?8.0;HDR=NO;IMEX=1;;//Sql语句//string?strExcel?=?string.Format(select?*?from?[{0}$],?strSheetName);?这是一种方法string?strExcel?=?select?*?from???[sheet1$];//定义存放的数据表DataSet?ds?=?new?DataSet();//连接数据源OleDbConnection?conn?=?new?OleDbConnection(strConn);conn.Open();//适配到数据源OleDbDataAdapter?adapter?=?new?OleDbDataAdapter(strExcel,?strConn);adapter.Fill(ds,?strSheetName);conn.Close();return?ds.Tables[strSheetName];}
很简单的代码,但是问题就出在连接字符串上面,后面一定要加上Extended Properties=Excel 8.0;HDR=NO;IMEX=1,HDR和IMEX也一定要配合使用,哈哈,老实说,我也不知道为什么,这样配合的效果最好,这是我艰苦调试的结果.IMEX=1应该是将所有的列全部视为文本,我也有点忘记了.至于HDR本来只是说是否要出现一行标题头而已,但是结果却会导致某些字段值丢失,所以其实我至今也搞不明白为什么,很可能是驱动的问题...
片段 2
提供两种方法:一个是直接打开excel文件,然后逐行读取,速度较慢;还有一种方法是通过OleDb连接,把excel文件作为数据源来读取方法一:这种直接读取单元格的方法释放很重要。
??
Excel.Application?excel?=?null;???Excel.Workbooks?wbs?=?null;???Excel.Workbook?wb?=?null;???Excel.Worksheet?ws?=?null;???Excel.Range?range1?=?null;???object?Nothing?=?System.Reflection.Missing.Value;???????try???{????excel?=?new?Excel.Application();????excel.UserControl?=?true;????excel.DisplayAlerts?=?false;????????????????????????excel.Application.Workbooks.Open(this.FilePath,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing?)?;????????wbs?=?excel.Workbooks;????wb?=?wbs[1];????ws?=?(Excel.Worksheet)wb.Worksheets[Sheet2];?????????????????int?rowCount?=?ws.UsedRange.Rows.Count;????int?colCount?=?ws.UsedRange.Col
原创力文档


文档评论(0)