在ASP.NET 1.1平台下,使用OLEDB进行excel文件的读取时,连接字符换无法打开

Xiao_Fa_831 2012-05-08 10:16:29
在两个页面中同时调用同一个方法,实现Excel的导入。
结果是:
1.[页面1]可以正常导入,[页面2]无法正常导入。
2.不同之处在于:[页面1]在前台使用open方式打开,[页面2]在前台使用模态方式打开。(个人觉得不是这个原因)

主要代码如下:

string strConn = "Provider=Microsoft.Jet.OleDb.4.0;" + "data source=" + path + ";Extended Properties='Excel 8.0; HDR=YES; IMEX=1'";

string strCom = "select * from [" + sheetName + "]";
DataTable dt = new DataTable();
using(OleDbConnection conn = new OleDbConnection(strConn))
{
try
{
conn.Open();----此处报错(即:没有可用的错误信息: E_NOINTERFACE(0x80004002)。

OleDbDataAdapter da = new OleDbDataAdapter(strCom, conn);
da.Fill(dt);
}
catch(Exception ex)
{
Console.WriteLine(ex.ToString());
}
return dt;
}

注:以上为主要代码,请各位高手,帮忙解决!谢谢
...全文
69 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
Xiao_Fa_831 2012-05-08
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 的回复:]

那你使用这个文件去能正确显示页面试试可以吗
[/Quote]

我试过了,也没有问题!
孟子E章 2012-05-08
  • 打赏
  • 举报
回复
那你使用这个文件去能正确显示页面试试可以吗
Xiao_Fa_831 2012-05-08
  • 打赏
  • 举报
回复
我去相应的路径中,找到了“201205081027441579816.xls”,并且可以打开
孟子E章 2012-05-08
  • 打赏
  • 举报
回复
计算机不行撒谎的,自己检查下是否真的一样
孟子E章 2012-05-08
  • 打赏
  • 举报
回复
能使用是调用的也是这个"D:\NPM\Web\PurchaseManagement\UploadFiles\201205081027441579816.xls文件吗?
你保证路径没有错误?
这个文件是真正的excel文件吗而不是页面导出的假的excel文件?
Xiao_Fa_831 2012-05-08
  • 打赏
  • 举报
回复
我就是不解,两个页面调用同一个方法,为什么一个能使用,另一个报错呢?请您指教
Xiao_Fa_831 2012-05-08
  • 打赏
  • 举报
回复
我调试了一下 就是“Sheet1$”的格式
Xiao_Fa_831 2012-05-08
  • 打赏
  • 举报
回复

变量path调试时的值如下:

@"D:\NPM\Web\PurchaseManagement\UploadFiles\201205081027441579816.xls"
孟子E章 2012-05-08
  • 打赏
  • 举报
回复
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1'";//最好去掉多余的空格

string strCom = "select * from [" + sheetName + "]";
这里的sheetName 需要是"Sheet1$"这样的内容
孟子E章 2012-05-08
  • 打赏
  • 举报
回复
path 是c:\\xxx\\xxx.xls之类的物理路径吗
Xiao_Fa_831 2012-05-08
  • 打赏
  • 举报
回复
本人在网上查了很多方法,都没有效果,请高手指教!谢谢

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧