如何在asp.net c#中获得上传文件的源地址?
本文关键字:文件 源地址 asp net | 更新日期: 2023-09-27 18:11:20
我需要的文件的实际位置,我刚刚通过一个文件上传控件在asp.net上传。我试过使用
string fileName = Path.GetFullPath(fUpldGetDoc.PostedFile.FileName);
但是返回
C:'Program Files'Microsoft Visual Studio 9.0'Common7'IDE'angel from montegomery.txt
但是我需要文件的实际位置,也就是
e:'angel from montegomery.txt
据我所知,这在大多数浏览器中都不是一个可移植的特性。
IE7可能(?)能够支持它,但大多数其他浏览器(FireFox, Opera, Chrome)似乎说文件名是支持的,但出于隐私/安全原因,路径是隐藏的。(IIRC有些浏览器甚至会"编造"一些明显的虚假路径,这样你就会清楚地看到它已被替换为安全原因)
我现在没有时间引用来源,但现在这是我的信息
EDIT:使用此属性时跨浏览器行为的概要信息。
httppostdfile。FileName应该提供文件在客户端机器上的FQ路径。
HttpFileCollection MyFileColl = Request.Files;
HttpPostedFile MyPostedFile = MyFileColl.Get(0);
String MyFileName = MyPostedFile.FileName;
请记住,浏览器可以返回它想要的任何内容,如果需要,可以选择隐藏部分路径。
总而言之,磁盘上的实际路径是无关紧要的,因为您在HttpPostedFile
中有数据以及名称。