前端上传一个文件,C#后台该用什么方式取文件流?
方式1: Stream stream = Request.Files[0].InputStream;
方式2: Stream stream = Request.InputStream;
我知道Request.InputStream是可以取请求体的所有内容,不仅包括一般参数,也可以包括文件。如果只是上传一个文件的话,是不是意味着两种方式都可以?有大神来答疑解惑的不
同学,可以的话,找台电脑试试看,纸上学来终觉浅,始知此事要躬行。
你是不清楚用什么方式获取文件流还是不知道怎么获取?你可以看一下下面这个内容:
一般操作流程是:
////创建文件流
////创建读取器
////读取内容进行相应的操作(入库、写入文件等)
////关闭读取器
////关闭文件流
30分钟玩转Net MVC 基于WebUploader的大文件分片上传、断网续传、秒传(文末附带demo下载):https://www.cnblogs.com/xiongze520/p/10412693.html
[CheckIsLogin]
public ActionResult Import(HttpPostedFileBase file){
string name = Path. (file.FileName);
int filesize = file.ContentLength;//获取上传文件的大小单位为字节byte
string fileEx = Path.GetExtension(name);//获取上传文件的扩展名
string noFileName = Path.GetFileNameWithoutExtension(name);//获取无扩展名的文件名
int maxSize = 10000 * 1024;//定义上传文件的最大空间大小为4M
string fileType = ".xls,.xlsx";//定义上传文件的类型字符串
if (fileType.Contains(fileEx) && filesize <= maxSize)
{
string fileName = noFileName + DateTime.Now.ToString("yyyyMMddhhmmss") + fileEx;
string path = AppDomain.CurrentDomain.BaseDirectory + "Uploads/Excel/";
string savePath = Path.Combine(path, fileName);
file.SaveAs(savePath);
}
}