【问题标题】:Asp.net mvc - get full file name of uploaded fileAsp.net mvc - 获取上传文件的完整文件名
【发布时间】:2011-11-02 07:29:44
【问题描述】:

asp.net mvc可以获取上传文件的全名吗?

更新 数据只包含文件名,不包含文件路径!详情见附图。

【问题讨论】:

  • 你的意思是完整的文件路径吗?还是只是文件名?
  • @Scott Rippey,完整文件名。
  • 哦,好的。只是为了澄清一下,您认为“完整文件名”是什么? “C:\Path\To\My File.txt”,还是“My File.txt”?
  • 你犯了一个重大的概念错误。另见:stackoverflow.com/questions/81180/…

标签: asp.net file-upload


【解决方案1】:

这取决于浏览器。
大多数浏览器(FF、Chrome、Safari)不发送此信息,主要是出于安全原因。但是,似乎某些版本的 IE 确实会发送完整的客户端路径。
该值将存储在HttpPostedFileFileName 属性中。

The documentation for FileName should help. 它说:

FileName:客户端文件的名称,包括目录路径。

在以下代码中,postedFile.FileName 会因浏览器而异。因此,始终只提取文件名很重要,而且您可能会很幸运并得到clientPath

public ActionResult UploadFile(HttpPostedFile postedFile) {
    var clientPath = IO.Path.GetDirectoryName(postedFile.FileName);
    var filename = IO.Path.GetFileName(postedFile.FileName);
    ... Save the file, etc ...
}

【讨论】:

  • 请看我的附件。
猜你喜欢
  • 1970-01-01
  • 2011-01-05
  • 1970-01-01
  • 2013-03-09
  • 1970-01-01
  • 1970-01-01
  • 2013-11-24
  • 2016-11-26
  • 1970-01-01
相关资源
最近更新 更多