问一个简单的文件打开问题,各位大侠帮忙唉!

lwk 2003-08-20 11:11:16
我在数据库里存放了服务器上存放的一个文件的绝对路径,现在我想在客户端点击它就打开这个文件。我如下的写法,在客户端打开的路径找到客户机的路径,而不是服务器的路径,所以一直出错,应怎么改呢?
Label9.Text = "<a href='E:/test.doc'>" & dsPlan.Tables(0).Rows(0)("Pattach1").ToString() & "</a>"
...全文
35 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
dmn 2003-08-25
  • 打赏
  • 举报
回复
建议你把数据库中文件的路径改为相应路径,只要把文件放到你的虚拟子目录下就可以。

否则就相当于客户端可以打开服务器上非网站目录下的文件了,那怎么了得。除非你在程序里作额外的处理。
panyee 2003-08-20
  • 打赏
  • 举报
回复
在e:\下的文件一般都不是外界能通过http来访问的

你可以用一个aspx文件来读取它的内容, 并传给客户端
string strFile = "e:\\test.doc";
FileStream fs = new FileStream(strFile, FileMode.Open);
byte[] bytes = new byte[(int)fs.Length];
fs.Read(bytes, 0, bytes.Length);
fs.Close();
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment;filename=" & strFile);
Response.BinaryWrite(bytes);
Response.End();
wacle 2003-08-20
  • 打赏
  • 举报
回复
Label9.Text = "<a href='"+Server.MapPath("test.doc")+"'>" & dsPlan.Tables(0).Rows(0)("Pattach1").ToString() & "</a>"
panyee 2003-08-20
  • 打赏
  • 举报
回复
服务器上直接操作才可以

你用 <a href="http://computername/test.doc">aaa</a>

把文件放在网站目录下即可
wolve 2003-08-20
  • 打赏
  • 举报
回复
你先把绝对路径转为相对路径就行了
所以办法是,你存的就是相对路径。

62,046

社区成员

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

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

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

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