1

当我使用 FileUpload 浏览文件时,为什么我的文件路径没有任何内容?我不想上传文件,我只想获取文件的目录(我正在使用该文件来更新带有(xlsx 文件)的 SQL 数据库)

<asp:FileUpload ID="FileUpload" runat="server" Height="24px" Style="position: static" Width="255px" />
<asp:Button ID="Uploadbtn" runat="server" OnClick="Uploadbtn_Click" Style="position: static" Text="Upload" Width="82px" />

Uploadbtn_Click 事件的代码后面(测试为“”)

string test = FileUpload.FileName;
4

2 回答 2

1

正如您可以在 MSDN ( http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.fileupload.filename.aspx ) 中阅读的那样,文件名永远不会包含该文件的目录。

绝不允许服务器上的软件窥视客户端计算机的内部。

于 2013-05-03T08:41:47.807 回答
0

对于这个问题的答案是,由于某些安全原因,我们没有机会从文件上传控件获取上传文件的完整路径,浏览器将只返回文件名而不是来自客户端计算机的完整文件路径。
如果您想从客户端机器的文件上传控件获取上传文件的完整路径,我们需要将该文件保存在我们的应用程序文件夹中,我们可以从中获取该文件的路径,如下所示

代码:

string filename = Path.GetFileName(fileUpload.PostedFile.FileName);
fileUpload.SaveAs(Server.MapPath("Files/"+filename));
string filepath = "Files/"+filename;

希望你能理解..

于 2013-05-03T08:43:06.820 回答