当前位置: 首页 > news >正文

网站功能小Demo——图片文件上传

  网站建设的过程中,经常会遇到文件上传功能,例如Word文档、Excel表格、图片等文件。这一实用的小功能如何实现的呢!我们一起来探究。

  在ASP.NET中,文件上传功能用到了FileUpload组件。下面就用图片的上传功能演示整个上传过程。

  前台设置好FileUpload组件:

1 <body>
2     <form id="form1" runat="server">
3     <div class="div_align">
4         <asp:FileUpload id="Up_Image" runat="server" CssClass="File_Load" />
5         <asp:Button ID="btn_save" runat="server" Text="上传" CssClass="Submit_btn" OnClick="btnSave_Click"/>
6     </div>
7     </form>
8 </body>

    

  大致效果如下(项目开发过程中需要美观可以定义一些自己喜欢的样式):

  后台流程处理:后台获取所选文件的文件名,并进行扩展名验证,验证上传文件是否为常用的jpg,jpeg,png等常用图片格式。为了使得上传文件唯一,将当前系统文件作为文件新名称。设置好文件存放路径后调用SaveAs( )方法即可完成上传流程。

 1 /// <summary>
 2         /// 文件上传流程(获取文件名->后缀名验证->获取保存路径->提交保存)
 3         /// </summary>
 4         /// <param name="sender"></param>
 5         /// <param name="e"></param>
 6         protected void btnSave_Click(object sender, EventArgs e)
 7         {
 8             //获取上传文件名
 9             string str = Up_Image.FileName;
10 
11             if (string.IsNullOrEmpty(str))
12             {
13                 ClientScript.RegisterStartupScript(this.GetType(), "message", "<script>alert('上传失败:尚未选择提交文件!')</script>");
14 
15                 return;
16             }
17 
18             //获取文件扩展名
19             string extension = Path.GetExtension(Up_Image.PostedFile.FileName);
20 
21             //ClientScript.RegisterStartupScript(this.GetType(),"message", "<script>alert('"+last+"')</script>");
22 
23             if (extension != ".jpg" && extension != ".png" && extension != ".jpeg")
24             {
25                 ClientScript.RegisterStartupScript(this.GetType(),"message", "<script>alert('上传文件格式必须为图片(jpg、jpeg、png等)格式!')</script>");
26 
27                 return;
28             }
29 
30             //获取当前时间作为文件名
31             string Time_Now = DateTime.Now.ToString("yyMMddHHMMss");
32 
33             string imageName = Time_Now + extension;
34 
35             //获取目标文件夹路径作为图片存放路径
36             string strUpPath = Server.MapPath("~/Image_File/") + imageName;
37             try
38             {
39                 //上传图片
40                 Up_Image.SaveAs(strUpPath);
41 
42                 ClientScript.RegisterStartupScript(this.GetType(), "message", "<script>alert('上传成功!')</script>");
43             }
44             catch (Exception ex)
45             {
46                 ClientScript.RegisterStartupScript(this.GetType(), "message", "<script>alert('上传失败,请联系管理员!')</script>");
47             }
48         }

  
  图片上传功能至此结束。功能本身并没有什么难度,扩展一下可以上传不同类型的文件,也可以尝试多文件上传。希望大家能发散思维,做更多的尝试,对知识进行发掘的过程总是美好的!

转载于:https://www.cnblogs.com/SunshineAgain/p/6588840.html

相关文章:

  • Linux常用命令汇总
  • 科普:Netcat使用手册
  • 磁化强度
  • rpc 理解
  • spark使用
  • 基于 html5的 jquery 轮播插件 flickerplate
  • 定义运算符
  • [转]ZooKeeper 集群环境搭建 (本机3个节点)
  • https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins
  • 《大学章句》光剑续编
  • 犀牛Phinoceros 如何切换中文语言
  • Spring4-EL中正则表达式的使用
  • web开发之Cookie使用
  • Python之Seaborn
  • php5.6源码安装及php-fpm配置与nginx集成
  • 【面试系列】之二:关于js原型
  • CODING 缺陷管理功能正式开始公测
  • ES6, React, Redux, Webpack写的一个爬 GitHub 的网页
  • GraphQL学习过程应该是这样的
  • HTTP那些事
  • Storybook 5.0正式发布:有史以来变化最大的版本\n
  • vue总结
  • webpack4 一点通
  • 对话:中国为什么有前途/ 写给中国的经济学
  • 服务器从安装到部署全过程(二)
  • 回流、重绘及其优化
  • 记录一下第一次使用npm
  • 记一次和乔布斯合作最难忘的经历
  • 目录与文件属性:编写ls
  • 批量截取pdf文件
  • 前端路由实现-history
  • 强力优化Rancher k8s中国区的使用体验
  • 设计模式走一遍---观察者模式
  • d²y/dx²; 偏导数问题 请问f1 f2是什么意思
  • ​【原创】基于SSM的酒店预约管理系统(酒店管理系统毕业设计)
  • # Python csv、xlsx、json、二进制(MP3) 文件读写基本使用
  • #1015 : KMP算法
  • #LLM入门|Prompt#1.8_聊天机器人_Chatbot
  • $.ajax,axios,fetch三种ajax请求的区别
  • (02)Hive SQL编译成MapReduce任务的过程
  • (11)MATLAB PCA+SVM 人脸识别
  • (pojstep1.1.2)2654(直叙式模拟)
  • (第一天)包装对象、作用域、创建对象
  • (翻译)Entity Framework技巧系列之七 - Tip 26 – 28
  • (附源码)springboot优课在线教学系统 毕业设计 081251
  • (附源码)ssm经济信息门户网站 毕业设计 141634
  • (黑马C++)L06 重载与继承
  • (解决办法)ASP.NET导出Excel,打开时提示“您尝试打开文件'XXX.xls'的格式与文件扩展名指定文件不一致
  • (三)c52学习之旅-点亮LED灯
  • (十一)c52学习之旅-动态数码管
  • (实战篇)如何缓存数据
  • (转)微软牛津计划介绍——屌爆了的自然数据处理解决方案(人脸/语音识别,计算机视觉与语言理解)...
  • .java 9 找不到符号_java找不到符号
  • .NET Core Web APi类库如何内嵌运行?
  • .NET Core WebAPI中使用swagger版本控制,添加注释