zoukankan      html  css  js  c++  java
  • C#读取图片流保存到文件,再读取流文件,把图片再显示出来

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.IO;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    
    namespace 将图片保存文件流
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
                StringBuilder sb = new StringBuilder();
                OpenFileDialog ofd = new OpenFileDialog();
                ofd.Filter = "(*.jpg)|*.jpg";
              
                  string fileName = ofd.FileName;
                //if (ofd.ShowDialog() == DialogResult.OK )// && !string.IsNullOrEmpty(fileName) ) 
                //{
                //    FileStream fs = new FileStream(ofd.FileName, FileMode.Open, FileAccess.Read);
                //    byte[] imageByte =  new byte[fs.Length];
                //    BinaryReader br = new BinaryReader(fs);
                //    imageByte = br.ReadBytes(Convert.ToInt32(fs.Length));
    
                //    for (int i = 0; i < imageByte.Length; i++)
                //    {
                //       sb.Append(imageByte[i].ToString());
                //    }
    
                //    textBox1.Text = sb.ToString();
    
                //}
    
                  if (ofd.ShowDialog() == DialogResult.OK)// && !string.IsNullOrEmpty(fileName) ) 
                  {
                      FileStream fs = new FileStream(ofd.FileName, FileMode.Open, FileAccess.ReadWrite);
                      
    
                      FileStream fSource = new FileStream(@"D:ABC.dat", FileMode.OpenOrCreate, FileAccess.ReadWrite);
                      BinaryWriter bw = new BinaryWriter(fSource);
    
                      byte[] imageByte = new byte[fs.Length];
                      BinaryReader br = new BinaryReader(fs);
                      imageByte = br.ReadBytes(Convert.ToInt32(fs.Length));
    
                      bw.Write(imageByte); 
                      int length = Convert.ToInt32(imageByte.Length);
                      //for (int i = 0; i < imageByte.Length; i++)
                      //{
                      //    sb.Append(imageByte[i].ToString());
                      //}
                      fs.Close();
                      //textBox1.Text = sb.ToString();
                      bw.Close();
                    
                      fSource.Close();
    
                  }
    
    
               
    
               // FileStream fs = new FileStream();
            }
    
            private void button2_Click(object sender, EventArgs e)
            {
                OpenFileDialog ofd = new OpenFileDialog();
                ofd.Filter = "(*.dat)|*.dat";
                if (ofd.ShowDialog() == DialogResult.OK) {
    
                
                    FileStream fs = new FileStream(ofd.FileName, FileMode.Open,FileAccess.Read);
                    byte[] imageByte =new byte[ofd.FileName.Length];
                    BinaryReader br = new BinaryReader(fs);
                    imageByte = br.ReadBytes(Convert.ToInt32(fs.Length));
    
                    MemoryStream ms = new MemoryStream(imageByte);
                    Bitmap bm = new Bitmap(ms);
    
                    pictureBox1.Image = bm;
                    ms.Close();
                    fs.Close();
                    fs.Dispose();
                }
            }
        }
    }
    

      

  • 相关阅读:
    Linux系统组成及初识
    Linux基础入门
    计算机和操作系统发展历史
    Swift,Objective-C,C,C++混合编程
    Objective-C数组和字典
    Java生成随机数字和字母组合10位数
    注册和登录
    IDEA的开发
    登录时@RequestBody报的错
    Java过滤特殊字符和表情
  • 原文地址:https://www.cnblogs.com/nymz/p/14226605.html
Copyright © 2011-2022 走看看