1. 程式人生 > >圖片數據的內存流讀取,再寫入

圖片數據的內存流讀取,再寫入

mod file 設置 事件 ima body 文件的 實例化 點擊

背景:一個窗體、一個pictureBox、一個lable[沒有選擇圖片,lable的text為"圖片未選擇"],在pictureBox1的Click事件中添加如下代碼:

private void pictureBox1_Click(object sender, EventArgs e)
{
//實例化一個打開文件對話框
OpenFileDialog op = new OpenFileDialog();
//設置文件的類型
op.Filter = "JPG圖片|*.jpg|GIF圖片|*.gif";
//如果用戶點擊了打開按鈕、選擇了正確的圖片路徑則進行如下操作:
if(op.ShowDialog()==DialogResult.OK)
{
//清空文本
this.label1.Text = "";
//實例化一個文件流
FileStream fs = new FileStream(op.FileName, FileMode.Open);
//把文件讀取到字節數組
byte[] data = new byte[fs.Length];
fs.Read(data, 0, data.Length);
fs.Close();

//實例化一個內存流--->把從文件流中讀取的內容[字節數組]放到內存流中去
MemoryStream ms = new MemoryStream(data);
//設置圖片框 pictureBox1中的圖片
this.pictureBox1.Image = Image.FromStream(ms);
}

}

圖片數據的內存流讀取,再寫入