4、上传文件后服务器对文件的相应处理

public void ProcessRequest(HttpContext context)
{
   context.Response.ContentType="text/plain";
   //接收SWFUpload发送过来的文件
   HttpPostFile file=context.Request.Files["Filedata"];
   //判断文件是否存在
   if(file!=null)
   {
      //取文件的名称与扩展名,并判断文件的类型是否正确
      string fileName=Path.GetFileName(file.FileName);
      string fileExt=Path.GetExtension(fileName);
      if(fileExt.ToLower()==".jpg")
      {
          //新建文件夹,(将上传上来的文件放到不同的文件夹)
          string dir="/upload/"+DateTime.Now().ToString("yyyy/MM/dd/");
          Directory.CreateDirectory(context.Request.MapPath(dir));
          //对文件进行重命名(使用文件流的MD5值做为上传图片的名称)
          string fulldir=dir+common.WebCommon.GetStreamMD5(file.InputStream)+fileExt;
          file.SaveAs(context.Request.MapPath(fulldir));
          context.Response.Write("ok:"+fulldir);
      }
   }
}


创建一个文件夹common,专门用来存放工具类
添加一个类WebCommon,并添加一个方法如下

//计算文件的MD5值
public static string GetStreamMD5(Stream stream)
{
   string strResult="";
   MD5CryptoServiceProvider md5=new MD5CryptoServiceProvider();
   byte[] arrayHashValue=md5.ComputeHash(stream); //计算指定stream对象的哈希值
   //由以连接字符分隔的十六进制构成的String,其中每一对表示value对应的元素,例如"F-2C-4A"
   strResult=System.bigtConverter.ToString(arrayHashValue);
   //替换
   strResult=strResult.Replace("-","");
   return strResult;
}

转载于:https://www.cnblogs.com/NFFF/archive/2013/06/14/swfupload2.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值