• ASP.NET学习笔记(4)——上传图片


    说明(2017-10-8 23:03:43):

    1. 后面的内容都是一些杂七杂八的,零零碎碎的,之前都直接略过了,不过其实还是挺重要的,这次重新学习要认认真真敲一遍。

    2. 明天中午9号要回北京了,今晚跟介绍的妹子聊了一个多小时,哎!

    3. 下集预告,给图片加水印!

    index.html

     1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     2 <html xmlns="http://www.w3.org/1999/xhtml">
     3 <head>
     4     <title></title>
     5 </head>
     6 <body>
     7     <form action="index.ashx" method="post" enctype="multipart/form-data">
     8     <input type="file" name="file" />
     9     <input type="text" name="txt" />
    10     <input type="submit" value="上传" />
    11     </form>
    12 </body>
    13 </html>

    index.ashx

     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Web;
     5 using System.IO;
     6 
     7 namespace _02_图片上传
     8 {
     9     /// <summary>
    10     /// index 的摘要说明
    11     /// </summary>
    12     public class index : IHttpHandler
    13     {
    14 
    15         public void ProcessRequest(HttpContext context)
    16         {
    17             context.Response.ContentType = "text/html";
    18             //接收文件数据
    19             HttpPostedFile file = context.Request.Files["file"];
    20             if (file == null)
    21             {
    22                 context.Response.Write("未上传图片!");
    23             }
    24             else
    25             {
    26 
    27                 //string fileName = Path.GetFileName(file.FileName);
    28                 //加上全局唯一标识,防止图片重名
    29                 Guid g = Guid.NewGuid();
    30                 string fileName = Guid.NewGuid().ToString();
    31                 //获取扩展名
    32                 string fileExt = Path.GetExtension(file.FileName);
    33                 //相对路径
    34                 string filePath = "image/" + DateTime.Now.Year + "/" + DateTime.Now.Month + "/" + DateTime.Now.Day + "/";
    35                 //绝对路径
    36                 //创建文件夹,以年月日命名
    37                 string fileRealPath = context.Request.MapPath("image/") + DateTime.Now.Year + "/" + DateTime.Now.Month + "/" + DateTime.Now.Day + "/";
    38                 Directory.CreateDirectory(fileRealPath);
    39                 //判断文件类型,防止上传病毒
    40                 if (fileExt == ".jpg")
    41                 {
    42                     file.SaveAs(fileRealPath + fileName + fileExt);
    43                     //这个地方的图片路径需要是相对路径,不然不显示
    44                     context.Response.Write("<html><head></head><body><h1>哈哈哈哈</h1><img src='" + filePath + fileName + fileExt + "'/></body></html>");
    45                 }
    46 
    47             }
    48         }
    49 
    50         public bool IsReusable
    51         {
    52             get
    53             {
    54                 return false;
    55             }
    56         }
    57     }
    58 }
  • 相关阅读:
    正则去掉 html标签
    app内嵌 h5页面 再滑动的时候 触发击穿底下的一些touchstart事件
    设置按钮不能连续点击并触发点击事件
    使用NPOI导入导出标准Excel
    ASP.NET导出word实例
    常用SQL语句大全总结
    判断以及防止SQL注入
    javascript 正则表达式总结
    前端页面优化技巧
    自我介绍
  • 原文地址:https://www.cnblogs.com/Jacklovely/p/7639087.html
Copyright © 2020-2023  润新知