C#.NET前台:<asp:Image ID="imgFood" runat="server" />
<asp:FileUpload ID="fileUpLoadPic" runat="server" />
<asp:Button ID="Button1" runat="server" Text="上传"
onclick="btnPicUpload_Click"/>
后台.CS文件:
protected void btnPicUpload_Click(object sender, EventArgs e) //上传按钮
{
if (fileUpLoadPic.HasFile) //文件存在
{
SaveFile(fileUpLoadPic.PostedFile);//保存上传文件
}
else
{
Response.Write("<script>alert('上传文件不存在!')</script>");
} if (fileUpLoadPic.PostedFile.FileName == "") //文件名字
{
Response.Write("<script>alert('你还没有选择图片!')</script>");
}
else
{
string filepath = fileUpLoadPic.PostedFile.FileName;
string filename = filepath.Substring(filepath.LastIndexOf("\\") + 1);//第一个\转义字符
Session["filename"] = filename;
string fileEx = filepath.Substring(filepath.LastIndexOf(".") + 1);//从.开始截至最后得到图片格式.jpg。。。
string serverpath = Server.MapPath("\\images\\") + filename;
if (fileEx == "jpg" || fileEx == "bmp" || fileEx == "gif")
{
imgFood.ImageUrl = "images/" + filename;
Response.Write("<script>alert('上传成功!')</script>");
return;
}
else
{
Response.Write("<script>alert('上传的格式有问题!')</script>");
return;
}
}
}
public void SaveFile(HttpPostedFile file)
{
string savePath = "C:\\Users\\DJJ\\Desktop\\School_Canteen2\\Web\\images\\";
string fileName = fileUpLoadPic.FileName; string pathToCheck = savePath + fileName;
string tempfilename = "";
if (System.IO.File.Exists(pathToCheck))
{
int counter = 2;
while (System.IO.File.Exists(pathToCheck))
{
tempfilename = counter.ToString() + fileName;
pathToCheck = savePath + tempfilename;
counter++;
}
fileName = tempfilename;
Response.Write("<script>alert('你上传了两个相同文件!')</script>");
}
savePath += fileName;
fileUpLoadPic.SaveAs(savePath);
}
若前台要保存图片路径到数据库:获取路径方式 (以string数据类型保存)
string F_Pic = Convert.ToString(Session["filename"]);//this.fileUpLoadPic.FileName;//fileUpLoadPic.AppRelativeTemplateSourceDirectory;//图片的数据库中保存图片路径
string f_pic = F_Pic.Substring(0, F_Pic.LastIndexOf(".")); //得到去掉.jpg后的名字

选择文件后,点击上传即可,上述代码虽有提示上传相同图片的功能,但还是会上传,若不想上传要做具体处理。

C#.net实现图片上传功能的更多相关文章

  1. thinkphp达到UploadFile.class.php图片上传功能

    片上传在站点里是非经常常使用的功能.ThinkPHP里也有自带的图片上传类(UploadFile.class.php) 和图片模型类(Image.class.php).方便于我们去实现图片上传功能,以 ...

  2. Spring+SpringMVC+MyBatis+easyUI整合优化篇(七)图片上传功能

    日常啰嗦 前一篇文章<Spring+SpringMVC+MyBatis+easyUI整合优化篇(六)easyUI与富文本编辑器UEditor整合>讲了富文本编辑器UEditor的整合与使用 ...

  3. PHP语言学习之php做图片上传功能

    本文主要向大家介绍了PHP语言学习之php做图片上传功能,通过具体的内容向大家展示,希望对大家学习php语言有所帮助. 今天来做一个图片上传功能的插件,首先做一个html文件:text.php < ...

  4. [Ting's笔记Day8]活用套件carrierwave gem:(3)Deploy图片上传功能到Heroku网站

    前情提要: 身为Ruby新手村民,创造稳定且持续的学习步调很重要,我用的方法就是一周在IT邦写三篇笔记,希望藉由把笔记和遇到的bug记录下来的过程,能帮助到未来想用Ruby on Rails架站的新手 ...

  5. H5 利用vue实现图片上传功能。

    H5的上传图片如何实现呢? 以下是我用vue实现的图片上传功能,仅供参考. <!DOCTYPE html> <html> <head> <meta chars ...

  6. 给DEDECMS广告管理中增加图片上传功能

    dedecms的广告管理功能稍微有点次,本文就是在dedecms广告管理原有的基础上增加广告图片上传功能. 安装方法,对应自己的dedecms版本下载对应的编码然后解压把里面的文件放在后台目录覆盖即可 ...

  7. vue 图片上传功能

    这次做了vue页面的图片上传功能,不带裁剪功能的! 首先是html代码,在input框上添加change事件,如下:   <ul class="clearfix">   ...

  8. 前端丨如何使用 tcb-js-sdk 实现图片上传功能

    前言 tcb-js-sdk 让开发者可以在网页端使用 JavaScript 代码服务访问云开发的服务,以轻松构建自己的公众号页面或者独立的网站等 Web 服务.本文将以实现图片上传功能为例,介绍 tc ...

  9. 改造百度UMeditor(UEditor-min)富文本编辑器的图片上传功能

    最近项目需要新增一个发布文章的模块,用的是百度的Ueditor富文本编辑器. 公司用的是阿里云的图片服务器,需要直接把文章中图片上传到服务器上,但是这个编辑器的上传图片是直接上传到Tomcat的根目录 ...

  10. drupal中安装CKEditor文本编辑器,并配置图片上传功能

    一.下载: 1.CKEditor模块 2.IMCE模块 二.安装       1.复制: 下载完上面两个模块之后,解压,将解压后整个文件夹,复制粘贴,放到 sites\all\modules下面,个人 ...

随机推荐

  1. src.rpm包的解压

    有时候,我们在找源码包时候,发现有src.rpm的包:而不是tar.gz/tgz/zip结尾的. 那么如何去看这个src.rpm里面的详细信息呢? 看完下面这个例子,基本上明白了. 1,首先,生成sp ...

  2. Web Uploader

    Github上的例子没看太明白,在网上找了些资料自己写了个demo,基本上就是用create方法初始化,然后on一堆事件,上传的进度条用的是swf格式的动画,感觉不是很先进的样子.不过我暂时也没搞明白 ...

  3. python sqlite3 入门 (视频讲座)

    python sqlite3 入门 (视频讲座) an SQLite mini-series! - Simple Databases with Python 播放列表: YouTube https:/ ...

  4. [转载]浅析为什么char类型的范围是 —128~+127

    http://blog.csdn.net/daiyutage/article/details/8575248 在C语言中, signed char 类型的范围为-128~127,每本教科书上也这么写, ...

  5. HDU 3790 最短路径问题 (最短路)

    题目链接 Problem Description 给你n个点,m条无向边,每条边都有长度d和花费p,给你起点s终点t,要求输出起点到终点的最短距离及其花费,如果最短距离有多条路线,则输出花费最少的. ...

  6. 键盘ASCII码

    回车键 -- CR 键0x0d   -- 16进制13 -- 10 进制'\r' -- 也可以 换行键 -- LF0x0a   -- 16进制10 -- 10 进制'\n' -- 也可以 esc键   ...

  7. APScheduler API -- apscheduler.triggers.date

    apscheduler.triggers.date API Trigger alias for add_job(): date class apscheduler.triggers.date.Date ...

  8. ActiveMQ监听消息并进行转发,监听不同的mq服务器和不同的队列

    工作中刚接触mq消息业务,其实也就是监听一下别的项目发送的消息然后进行对应的转发,但是监听的mq会有多个,而且转发的地址也可能有多个,这里就使用spring集成的方式!记录一下实现方式: 监听多个mq ...

  9. Remove K Digits

    Given string A representative a positive integer which has N digits, remove any k digits of the numb ...

  10. 【HASPDOG】Communication error

    靠,防火墙没关,关了防火墙生成文件成功