我知道如何編碼/解碼一個簡單的字符串到/從base64。用c編碼一個FileStream到base64#
但是,如果數據已被寫入FileStream對象,我該怎麼辦。比方說,我只能訪問FileStream對象而不能訪問之前存儲的原始數據。在將FileStream刷新到文件之前,如何將FileStream編碼爲base64。
Ofc我可以在將文件流寫入文件後打開我的文件並對其進行編碼/解碼,但我希望一步完成所有操作,而無需一個接一個地執行兩個文件操作。該文件可能會更大,並且需要兩倍的時間才能加載,編碼並在之前很短時間保存之後再次保存。
也許你有人知道更好的解決方案?我可以將FileStream轉換爲字符串,對字符串進行編碼,然後將字符串轉換回FileStream爲例,或者我會做什麼以及這樣的代碼是怎麼樣的?
我不知道我完全理解你的問題,但它可以使用內置在類中提供一個將二進制數據轉換爲基本數據或從基本數據轉換爲二進制數據的流。然後,您可以在寫入和文件輸出流之間插入一個這樣的流(例如通常用於壓縮流和加密流)。一個例子是在這裏:http://netpl.blogspot.co.uk/2011/05/builtin-base64-streaming.html –
[如何將流轉換爲C#中的字節\ [\]?]( http://stackoverflow.com/questions/1080442/how-to-convert-an-stream-into-a-byte-in-c) – Liam
可能的重複[是否有Base64Stream for .NET?在哪裏?](http://stackoverflow.com/questions/2525533/is-there-a-base64stream-for-net-where) – xmedeko