用.net写了个excel导入数据库,在本地上传excel能成功,但是把程式发布到服务器上之後,上传时报错,求高手指点

用.net写了个excel导入数据库,在本地上传excel能成功,但是把程式发布到服务器上之後,上传时报错,说System.Data.OleDb.OleDbExcepti... 用.net写了个excel导入数据库,在本地上传excel能成功,但是把程式发布到服务器上之後,上传时报错,说System.Data.OleDb.OleDbException: Microsoft Jet 资料库引擎无法找到 'D:\复制 -11.xls' 物件。请确定这个物件存在,而且您没有将物件的名称及路径拼错。它这个路径估计是读取了服务器上的路径,怎麼使它读取本地路径,请高手指点,不胜感激,最好能把代码发出来,谢谢 展开
 我来答
彩虹下的微笑Mi
2012-04-11 · 超过65用户采纳过TA的回答
知道小有建树答主
回答量:146
采纳率:0%
帮助的人:159万
展开全部
拉一个FileUpload1控件作上传,然后在服务段读取excel文件,注意excel存放目录要开发权限给network serivice
protected void btnUpload_Click(object sender, EventArgs e)
{
bool flag = false;
StringBuilder sb = new StringBuilder();
if (this.FileUpload1.FileName == "")
{
sb.Append("请选择excel文件!!" + "\r\n");
}
else
{
string filefullpath = this.FileUpload1.PostedFile.FileName;
string filename = filefullpath.Substring(filefullpath.LastIndexOf("\\") + 1);
string type = filename.Substring(filename.LastIndexOf(".") + 1).ToLower();
if (type == "xls")
{
string sJudgeIfExit = Server.MapPath("..\\Upload\\") + filename;
if (System.IO.Directory.Exists(sJudgeIfExit))
{
sb.Append("文件名重复!!" + "\r\n");
}
else
{
this.FileUpload1.PostedFile.SaveAs(sJudgeIfExit);
Session["OTCTable"] = CreateDataSource(sJudgeIfExit).Tables[0];
sb.Append("加载ExcelOK!" + "\r\n");
flag = true;
}

}
else
{
sb.Append("请选择excel文件操作!" + "\r\n");

}
}
}

private DataSet CreateDataSource(string filepath)
{
DataSet myds = new DataSet();
string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filepath + "; Extended Properties=Excel 8.0;";
OleDbConnection olecon = new OleDbConnection(strCon);
OleDbDataAdapter myda = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", strCon);
myda.Fill(myds, "excel");
return myds;
}
chenguihao
2012-04-11 · 超过45用户采纳过TA的回答
知道小有建树答主
回答量:149
采纳率:100%
帮助的人:80.7万
展开全部
必须是读取服务器上的路径 如果你想要读取 客户端的 那么做法应该是
1,在客户端上传时,先要取回客户端上的文档

2.压缩成二进制流 传到服务器上

3.服务器直接通过这个二进制流转换成对应的Excel 保存到服务器的对应路径上。
更多追问追答
追问
你好,那我想问下,怎麼传到服务器上呀
追答
我是用c#写WInForm 的 WEb的没有用

所以我只能提供思路 具体写法 楼主可能要自己上网去看看相关的例子了

这部分的例子 应该很多。只要思路对 后面的路就好走了。·
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式