看板 C_Sharp 關於我們 聯絡資訊
小弟近期在學習C#視窗程式設計,最近讀到有關Binarywriter/Reader類別的撰寫 其中有個範例程式碼是寫出一個能夠秀出圖片並且複製的小程式 其中有段程式碼如下 long size = br.BaseStream.Length; // 資料串流的長度 bufferData = new byte[size]; // 建立位元組陣列 bufferData = br.ReadBytes((int)size); // 將讀取到的資料串流指向bufferData陣列 . . . FileStream fout = new FileStream(DestFile, FileMode.Create); // 建立檔案串流 BinaryWriter bw = new BinaryWriter(fout); // 建立二進位串流寫入器 bw.Write(bufferData); // 將bufferData陣列內容寫入資料串流 bw.Flush(); // 清空緩衝區 bw.Close(); // 關閉資料串流 fout.Close(); // 關閉檔案串流 發現紅字的部分即使刪除,程式還是可以正常執行 想請問一下是為什麼呢? 另外如果程式執行後,緩衝區的狀態又是如何的呢? 請幫忙解惑一下 感恩~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.251.89.191 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1422945235.A.FDB.html
wenyonba: 因為你指定了FileStream如果沒有檔案就建立新檔案 02/03 15:06
wenyonba: 只是你沒有寫入,又把它關掉了 02/03 15:06
wenyonba: 所以如果DestFile不存在,程式也不會有Exception 02/03 15:07