zoukankan      html  css  js  c++  java
  • 一般处理程序进行上传(修改后,中级版)

    <!DOCTYPE html>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <title></title>
    </head>
    <body>
        <form action="ProcessFileUp.ashx" method="post" enctype="multipart/form-data">
            <input type="file" name="fileup" />
            <input type="submit" value="上传" />
        </form>
    </body>
    </html>
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.IO;
    
    namespace CZBK.ItcastProject.WebApp._2015_5_27
    {
        /// <summary>
        /// ProcessFileUp 的摘要说明
        /// </summary>
        public class ProcessFileUp : IHttpHandler
        {
    
            public void ProcessRequest(HttpContext context)
            {
                context.Response.ContentType = "text/html";
                HttpPostedFile file= context.Request.Files[0];//获取上传的文件
                if (file.ContentLength>0)
                {
                    //对上传的文件类型进行校验
                    string fileName =Path.GetFileName(file.FileName);//获取上传文件的名称,包含扩展名
                    string fileExt = Path.GetExtension(fileName);//获取用户上传的文件扩展名
                    if (fileExt==".jpg")
                    {
                        //对上传文件进行重命名
                        string newfileName = Guid.NewGuid().ToString();
                        //将上传的文件放在不同目录下
                        string dir = "/ImageUpload/"+DateTime.Now.Year+"/"+DateTime.Now.Month+"/"+DateTime.Now.Day+"/";
                        //创建文件夹
                        if (!Directory.Exists(context.Request.MapPath(dir)))
                        {
                            Directory.CreateDirectory(context.Request.MapPath(dir));
                        }
                        //文件的完整路径
                        string fullDir = dir + newfileName + fileExt;
                        //注意:保存一定要用context.Request.MapPath来回去路径
                        file.SaveAs(context.Request.MapPath(fullDir));
                        context.Response.Write("<html><body><img src='"+fullDir+"'></body></html>");
                        //file.SaveAs(context.Request.MapPath("/ImageUpload/"+fileName));//完成文件的保存
                        //context.Response.Write("<html><body><img src='/ImageUpload/" + fileName + "'></body></html>");
                    }
                    else
                    {
                        context.Response.Write("只能上传图片文件");
                    }
                }
                else
                {
                    context.Response.Write("请选择上传文件");
                }
            }
    
            public bool IsReusable
            {
                get
                {
                    return false;
                }
            }
        }
    }
  • 相关阅读:
    call/cc 总结 | Scheme
    用call/cc合成所有的控制流结构
    词法作用域 vs 动态作用域
    数论部分第二节:埃拉托斯特尼筛法
    1022: [SHOI2008]小约翰的游戏John【Nim博弈,新生必做的水题】
    C++面向对象作业1
    数论部分第一节:素数与素性测试【详解】
    基数排序与桶排序,计数排序【详解】
    计蒜客:百度的科学计算器(简单)【python神解】
    优质免费在线学习网站【自用】
  • 原文地址:https://www.cnblogs.com/wyt007/p/6099040.html
Copyright © 2011-2022 走看看