c#上传文件代码,求详细解释,急!!
HttpFileCollectionfiles=HttpContext.Current.Request.Files;for(inti=0;i<files.Count;i+...
HttpFileCollection files = HttpContext.Current.Request.Files;
for (int i = 0; i < files.Count; i++)
{
if (i < files.Count && i < 10)
{
if (files[i].FileName != "" || files[i] != null)
{
int FileSize = 6 * 1024 * 1024;
HttpPostedFile myFile = files[i];
string strFilePath = myFile.FileName.ToString().Trim();
int nFindSlashPos = strFilePath.Trim().LastIndexOf("\\") + 1;
string UploadFileName = strFilePath.Substring(nFindSlashPos);
string FileName = string.Format("{0:yyMMdd-hhmmss}", DateTime.Now) + "_" + UploadFileName;
if (myFile.FileName.Trim() == "") // Empty value in Browse Box
{
return "";
}
if (myFile.ContentLength != 0)
{
myFile.SaveAs(this.Request.PhysicalApplicationPath.ToString().Trim() + @"\uploads\" + FileName);
}
return FileName;
}
}
return "";
} 展开
for (int i = 0; i < files.Count; i++)
{
if (i < files.Count && i < 10)
{
if (files[i].FileName != "" || files[i] != null)
{
int FileSize = 6 * 1024 * 1024;
HttpPostedFile myFile = files[i];
string strFilePath = myFile.FileName.ToString().Trim();
int nFindSlashPos = strFilePath.Trim().LastIndexOf("\\") + 1;
string UploadFileName = strFilePath.Substring(nFindSlashPos);
string FileName = string.Format("{0:yyMMdd-hhmmss}", DateTime.Now) + "_" + UploadFileName;
if (myFile.FileName.Trim() == "") // Empty value in Browse Box
{
return "";
}
if (myFile.ContentLength != 0)
{
myFile.SaveAs(this.Request.PhysicalApplicationPath.ToString().Trim() + @"\uploads\" + FileName);
}
return FileName;
}
}
return "";
} 展开
1个回答
展开全部
HttpFileCollection files = HttpContext.Current.Request.Files; //获取客户端提交的所有的要上传的文件
for (int i = 0; i < files.Count; i++) //开始遍历这个集合
{
if (i < files.Count && i < 10) //这句(i < files.Count)纯属多余, 如果上传的文件个数不多于十个继续后面的操作
{
if (files[i].FileName != "" || files[i] != null) //如果上传的文件有文件名 执行后续操作
{
int FileSize = 6 * 1024 * 1024; //设定文件大小(这句好像没有使用到,估计是做上传大小限制的)
HttpPostedFile myFile = files[i]; //取出当前上传的文件对象
string strFilePath = myFile.FileName.ToString().Trim(); //去掉文件的文件名的空格(左右两边)
int nFindSlashPos = strFilePath.Trim().LastIndexOf("\\") + 1; //取得后缀(其实完全可以不用这么干)
string UploadFileName = strFilePath.Substring(nFindSlashPos); //获取文件名(不带后缀)
string FileName = string.Format("{0:yyMMdd-hhmmss}", DateTime.Now) + "_" + UploadFileName; //设定要保存的文件名(取时间是有风险的 在循环中你获取到的时间可能是一致的)
if (myFile.FileName.Trim() == "") // Empty value in Browse Box
{
return "";
}
if (myFile.ContentLength != 0) //如果文件的长度不等于了(文件流的长度)
{
myFile.SaveAs(this.Request.PhysicalApplicationPath.ToString().Trim() + @"\uploads\" + FileName); //保存文件
}
return FileName;
}
}
return "";
} }
for (int i = 0; i < files.Count; i++) //开始遍历这个集合
{
if (i < files.Count && i < 10) //这句(i < files.Count)纯属多余, 如果上传的文件个数不多于十个继续后面的操作
{
if (files[i].FileName != "" || files[i] != null) //如果上传的文件有文件名 执行后续操作
{
int FileSize = 6 * 1024 * 1024; //设定文件大小(这句好像没有使用到,估计是做上传大小限制的)
HttpPostedFile myFile = files[i]; //取出当前上传的文件对象
string strFilePath = myFile.FileName.ToString().Trim(); //去掉文件的文件名的空格(左右两边)
int nFindSlashPos = strFilePath.Trim().LastIndexOf("\\") + 1; //取得后缀(其实完全可以不用这么干)
string UploadFileName = strFilePath.Substring(nFindSlashPos); //获取文件名(不带后缀)
string FileName = string.Format("{0:yyMMdd-hhmmss}", DateTime.Now) + "_" + UploadFileName; //设定要保存的文件名(取时间是有风险的 在循环中你获取到的时间可能是一致的)
if (myFile.FileName.Trim() == "") // Empty value in Browse Box
{
return "";
}
if (myFile.ContentLength != 0) //如果文件的长度不等于了(文件流的长度)
{
myFile.SaveAs(this.Request.PhysicalApplicationPath.ToString().Trim() + @"\uploads\" + FileName); //保存文件
}
return FileName;
}
}
return "";
} }
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询