4

有没有一种简单的方法可以FileInfo从 中获取对象HttpPostedFileBase?我意识到我可以保存文件然后执行类似的操作DirectoryInfo.GetFiles,然后遍历文件以查找我的文件,但是对于给定的文件,有没有更简单的方法可以做到这一点?

4

1 回答 1

9

上传的文件没有FileInfo关联。只有filename作为参数以及文件流本身发送。这就是您可以查询的内容:

HttpPostedFileBase file = ...

string filename = file.FileName;
int fileSize = file.ContentLength;
string contentType = file.ContentType;
using (Stream stream = file.InputStream)
{
    // do something with the file contents here
}

为了更好地了解客户端发送的内容,我邀请您阅读multipart/form-data规范。

FileInfo 对象包含 LastModified 和 LastAccessed 日期之类的内容,这不是上传文件时发送的信息。如果您将文件保存在 Web 服务器磁盘上,然后从中检索 FileInfo,请记住,您将检索的是服务器上有关此文件的信息,而不是客户端上的信息,因为这些信息在文件已上传。

于 2013-01-23T16:55:27.610 回答