我正在寫文本到System.IO.StreamWriter
。如何使用一臺StreamWriter寫入多個基礎流?
基礎流(在new StreamWriter(underlyingStream)
中指定)寫入遠程文件。 (我不認爲它的類型是相關的,但爲了完整起見,我會提到它是一個微軟azure CloudBlobStream underlyingStream
)。
現在,我想通過在StreamWriter
和第二個CloudBlobStream
之間使用GZipOutputStream compressedUnderlyingStream
來編寫一個具有相同內容的附加壓縮文件來擴展此功能。
我正在尋找一種方法來指定CloudBlobStream
s作爲StreamWriter
的基礎流。但我找不到方法。是否存在可組合兩個基礎流的流類型?或者我該如何解決這個問題?注意我希望一切都保持爲流,以最大限度地減少內存中的數據量。
//disregard lack of using statements for this example's sake
CloudBlobStream blobStream = blob.OpenWrite();
CloudBlobStream compressedBlobStream = compressedBlob.OpenWrite();
GZipOutputStream compressorStream = new GZipOutputStream(compressedBlobStream);
//I make the streamwriter here for the regular blob,
///but how could I make the same streamwriter also write to the compressedBlob at the same time?
TextWriter streamWriter = new StreamWriter(blobStream, Encoding.UTF8);
有沒有這樣的標準'Stream'實現,你需要做你自己的。 –