[問題] 關於資料串流輸出/入類別

看板C_Sharp作者 (╮( ̄▽ ̄")╭)時間9年前 (2015/02/03 14:33), 編輯推噓0(003)
留言3則, 1人參與, 最新討論串1/1
小弟近期在學習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

02/03 15:06, , 1F
因為你指定了FileStream如果沒有檔案就建立新檔案
02/03 15:06, 1F

02/03 15:06, , 2F
只是你沒有寫入,又把它關掉了
02/03 15:06, 2F

02/03 15:07, , 3F
所以如果DestFile不存在,程式也不會有Exception
02/03 15:07, 3F
文章代碼(AID): #1Kq6lJ_R (C_Sharp)