欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

基于C# winform实现图片上传功能的方法

程序员文章站 2023-12-18 16:24:28
本文所述实例实现将一张图片上传到指定的文件夹,然后在窗体上的pictruebox控件中显示出来。 具体功能代码如下: private void btnuploa...

本文所述实例实现将一张图片上传到指定的文件夹,然后在窗体上的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;
  }
 }
}

上一篇:

下一篇: