使用FileUpload Control获取文件的完整路径我正在使用FileUpload控件的Web应用程序。我在我试图上传的完整文件路径'C:\ Mailid.xls'中有一个xls文件。当我使用命令FileUpload1.PostedFile.FileName我无法从我的系统中获取完整的文件路径。但是,当我在另一个系统中使用上述命令时,它工作正常。我也尝试了以下命令但没有成功: System.IO.Path.GetFullPath(FileUpload1.PostedFile.FileName);
Path.GetFileName(FileUpload1.PostedFile.FileName);
System.IO.Path.GetDirectoryName(FileUpload1.PostedFile.FileName).ToString();
Convert.ToString(System.IO.Directory.GetParent(FileUpload1.PostedFile.FileName));我怎样才能获得完整的路径?
3 回答
米琪卡哇伊
TA贡献1998条经验 获得超6个赞
尝试
Server.MapPath(FileUpload1.FileName);
编辑: 此答案描述了如何获取服务器上文件的路径。它没有描述如何获取客户端上文件的路径,这就是问题所在。这个问题的答案是“你不能”,因为出于安全原因,现代浏览器不会告诉你客户端上的路径。
摇曳的蔷薇
TA贡献1793条经验 获得超6个赞
这是目前真正的,“当你上传文件,浏览器将只发送源文件名,而不是完整路径” -它非常有意义,服务器有没有企业知道文件是否是在“C:\ WINDOWS \”或者“ F:\ SOMEDIR \ OTHERDIR \ PERSONALINFO \”。始终发送文件名,这对于帮助用户“识别”内容以及可能询问文件扩展名以帮助确定文件类型都很有用。
但是我从经验中知道Internet Explorer肯定习惯(在旧版本中)发送整个路径。很难找到权威的确认(除了这个apache fileupload控件doco)
Internet Explorer提供上载文件的完整路径,而不仅仅是基本文件名
无论如何,您不应该使用也不希望任何“现代”浏览器发送完整路径。
- 3 回答
- 0 关注
- 1336 浏览
添加回答
举报
0/150
提交
取消