基于C# winform实现图片上传功能的方法
作者:shichen2014 发布时间:2022-09-12 18:18:14
标签:C#,winform,图片上传,功能
本文所述实例实现将一张图片上传到指定的文件夹,然后在窗体上的PictrueBox控件中显示出来。
具体功能代码如下:
private void btnUpload_Click(object sender, EventArgs e)
{
//创建一个对话框对象
OpenFileDialog ofd = new OpenFileDialog();
//为对话框设置标题
ofd.Title = "请选择上传的图片";
//设置筛选的图片格式
ofd.Filter = "图片格式|*.jpg";
//设置是否允许多选
ofd.Multiselect = false;
//如果你点了“确定”按钮
if (ofd.ShowDialog()== System.Windows.Forms.DialogResult.OK)
{
//获得文件的完整路径(包括名字后后缀)
string filePath = ofd.FileName;
//将文件路径显示在文本框中
txtImgUrl.Text = filePath;
//找到文件名比如“1.jpg”前面的那个“\”的位置
int position = filePath.LastIndexOf("\\");
//从完整路径中截取出来文件名“1.jpg”
string fileName = filePath.Substring(position+1);
//读取选择的文件,返回一个流
using (Stream stream = ofd.OpenFile())
{
//创建一个流,用来写入得到的文件流(注意:创建一个名为“Images”的文件夹,如果是用相对路径,必须在这个程序的Degug目录下创建
//如果是绝对路径,放在那里都行,我用的是相对路径)
using (FileStream fs = new FileStream(@"./Images/" + fileName, FileMode.CreateNew))
{
//将得到的文件流复制到写入流中
stream.CopyTo(fs);
//将写入流中的数据写入到文件中
fs.Flush();
}
//PictrueBOx 显示该图片,此时这个图片已经被复制了一份在Images文件夹下,就相当于上传
//至于上传到别的地方你再更改思路就行,这里只是演示过程
pbShow.ImageLocation = @"./Images/" + fileName;
}
}
}


猜你喜欢
- 这篇文章向大家分享了几段代码,主要是关于Thread+IO文件的加密解密,下面看看具体代码:加密启动线程package com.hz.sub
- RollViewPager是一个自动轮播的Viewpager,支持无限循环。 触摸时会暂停播放,直到结束触摸一个延迟周期以后继续播放。 看起
- 本文实例为大家分享了Android实现滑动标尺选择值,效果图1.自定义属性attrs.xml<declare-styleable na
- Android 应用签名的两种方法一、使用pem签名 (一) apk签名命令java –jar sign
- 一、配置xml路径mybatis-plus:mapper-locations: classpath:mapper/*.xml二、编写Mapp
- /** * 循环录像,当内存卡容量少于300M时,自动删除视频列表里面的第一个文件 */private void xunhuanluxian
- 数据结构是数据存储的方式,算法是数据计算的方式。所以在开发中,算法和数据结构息息相关。今天的讲义中会涉及部分数据结构的专业名词,如果各位铁粉
- Device Administration对于这个应用,市场上很多,但是看一下评论就知道效果有多差了,因为99%一键锁屏应用没办法卸载。今天
- 本文实例为大家分享了java实现简单俄罗斯方块的具体代码,供大家参考,具体内容如下结合网上的资料刚做完课程设计,具体代码如下:public
- 1 本地调试介绍本地调试: 这里是指在开发环境中,部署了一整套的某个项目或者产品的服务,开发人员开发时,本地会起一个或多个服务,这些服务和开
- 代码实例一 using System; using System.IO; using System.Collections; using S
- Spring容器可以在不使用<constructor-arg>和<property>元素的情况下自动装配相互协作的b
- 一、介绍SharpZipLib是一个完全由C#编写的ZIP,GZIP,Tar和BZIP2 Library,可以方便的支持这几种格式的压缩和解
- 对 Excel 进行读写操作是生产环境下常见的业务,网上搜索的实现方式都是基于POI和JXL第三方框架,但都不是很全面。小编由于这两天刚好需
- Kryo框架的source已移至https://github.com/EsotericSoftware/kryo ,进入此页面,然后点击右边
- 背景公司最近要求给我负责的APP加上视频录制和发布的功能,我简单的完成了基本的录制和视频压缩功能,后来发现发布接口需要上传视频的截图,网上搜
- 本文介绍了AndroidStudio3.0开发调试安卓NDK的C++代码,分享给大家,具有如下:一、新建项目新建项目,没有发现Include
- 本文记录了笔者的第一个Java程序,基于Java抽象窗口工具(abstract window toolkit , AWT)和Swing(Sw
- 去年春节的时候支付宝推行的集福娃活动着实火的不能再火了,更给力的是春晚又可以全民参与咻一咻集福娃活动,集齐五福就可平分亿元大红包,只可惜没有
- 在android提供了一种类型:Parcel。被用作封装数据的容器,封装后的数据可以通过Intent或IPC传递。 除了基本类型以外,只有实