本文所述實例實現將一張圖片上傳到指定的文件夾,然后在窗體上的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("http://"); //從完整路徑中截取出來文件名“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; } }}
新聞熱點
疑難解答