关于Excel文件上传读取数据的问题 请问你是实现在服务器读取客户端指定的EXCEL文件吧? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 string path = File1.PostedFile.FileName; Response.Write(path); //string path = Server.MapPath(Path.GetFileName(File1.PostedFile.FileName)); string mystring="Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = '"+ path +"';Extended Properties=Excel 8.0"; OleDbConnection mycnn=new OleDbConnection(mystring); string mysql ="select * from [mywork$]"; mycnn.Open(); OleDbDataAdapter myDataAdapter=new OleDbDataAdapter (mysql,mycnn); DataSet myDataSet =new DataSet(); myDataAdapter.Fill(myDataSet,"aa"); mycnn.Close();我这个有一个问题就是在客户端指定一个EXCEL时,提示数据引擎打不开这个文件,请指教! 你这个也是在客户端指定的EXCEL吗?服务器端需要设计什么吗?我这个程序可以在本地正常运行,提出的数据也能正常读取,但我把程序放在服务器上就提示“数据引擎打不开这个文件”,不知如何解决? Excel单元格的数据类型设置的问题 在读入EXCEL文件之前,最好是去掉所有的格式我已经遇到过N次了. 这个问题我已经解决了,现把解决的办法公布出来最开始是钻进了牛角尖,一直在想在Excel文件上传以后再通过程序改变里面的数据努力了半天一直未能成功后来一想,说不定在上传的时候就可以控制的为什么不在上传的时候想想办法呢?就赶快在网上查了一些资料最后终于让我找到了,这里要感谢【思归MVP大侠】的提醒把Excel链接的属性改一下就可以了就是下面这句话string mystring="Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = '"+ path +"';Extended Properties=Excel 8.0";改为string strConn= "Provider=Microsoft.Jet.OleDb.4.0;" + "data source="+Path+ ";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'";后面多了两个参数HDR=Yes;IMEX=1,而且这里Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'必须要用引号这两个参数的意思是HDR=Yes;" indicates that the first row contains columnnames, not data"IMEX=1;" tells the driver to always read "intermixed" data columns as textto snowman163254(雪人)你的问题解决没有?请另开一贴吧,我要给各位热心帮助的人结分了 这样做excel里面就不能有标题了吧,但是我把HDR=No 也不行啊!有些时候有一些特殊的格式也不行,可不可以在绑定时,用地址来确定数据源,怎么写代码呢? 冒泡排序问题 SOS,实现一个【文件读、写】问题.急!急! c#windows程序,如何上传照片并保存在服务器的硬盘里 winform问题,datagridview 执行onpaint事件后。。。 Form 鼠标消息 关于treeview和contextMenuStrip的问题,请大家帮忙 C#中有没有模拟事件调用的方法 在datagridview中要选中一行数据修改或删除或添加的代码怎么写! 以前有一个2003的老程序,现在要升级到2008 初学C#,兄弟们进来留言! 高手们挑挑错误吧!拜托! 如何取得局域网内计算机运行程序的列表?
Response.Write(path);
//string path = Server.MapPath(Path.GetFileName(File1.PostedFile.FileName));
string mystring="Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = '"+ path +"';Extended Properties=Excel 8.0";
OleDbConnection mycnn=new OleDbConnection(mystring);
string mysql ="select * from [mywork$]";
mycnn.Open();
OleDbDataAdapter myDataAdapter=new OleDbDataAdapter (mysql,mycnn);
DataSet myDataSet =new DataSet();
myDataAdapter.Fill(myDataSet,"aa");
mycnn.Close();
我这个有一个问题就是在客户端指定一个EXCEL时,提示数据引擎打不开这个文件,请指教!
我已经遇到过N次了.
最开始是钻进了牛角尖,一直在想在Excel文件上传以后再通过程序改变里面的数据
努力了半天一直未能成功后来一想,说不定在上传的时候就可以控制的
为什么不在上传的时候想想办法呢?就赶快在网上查了一些资料
最后终于让我找到了,这里要感谢【思归MVP大侠】的提醒
把Excel链接的属性改一下就可以了
就是下面这句话
string mystring="Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = '"+ path +"';Extended Properties=Excel 8.0";
改为
string strConn= "Provider=Microsoft.Jet.OleDb.4.0;" + "data source="+Path+ ";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'";
后面多了两个参数
HDR=Yes;IMEX=1,而且这里Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'必须要用引号
这两个参数的意思是
HDR=Yes;" indicates that the first row contains columnnames, not data
"IMEX=1;" tells the driver to always read "intermixed" data columns as textto snowman163254(雪人)
你的问题解决没有?请另开一贴吧,我要给各位热心帮助的人结分了