從http://msdn.microsoft.com/en-us/library/system.io.memorystream%28v=VS.90%29.aspx:一個無符號字節數組創建如何檢查C#流是否可調整大小?
內存流提供的數據的 不可調整大小的流。當使用字節數組時,雖然您可能可以通過 修改現有內容,具體取決於傳遞給構造函數的參數 既不追加也不收縮流。空的內存流可調整大小,並且可以被寫入和讀取。
當提供給MemoryStream
(甚至只是一個Stream
)的引用,一個如何檢查它是否是可調整大小?
使用OpenXML SDK時出現了這種情況,它要求傳遞給它的流可調整大小。我可以通過深度複製到可調整大小的流來確保可調整性,我只是想知道爲什麼當一個錯誤參數傳遞給它時(即不可調整的流),庫不會拋出異常。
如果在現有的字節數組'MemoryStream'構造函數傳遞,內存流僅僅是包裝的陣列。所以自然不能調整數組和流的大小(通過擴展)。 –