问题1:这是您的代码,因此您应该知道为什么要编写代码(或者您可以提供从中获取代码的链接)。绝对不清楚为什么在读取数据时需要刷新流。
问题2:在字节数组上创建MemoryStream时,流不可调整大小是合理的。在这种情况下,流不能改变其大小(通常用于读取,如您的情况)。正如我在问题1中所说,目前尚不清楚为什么你会在阅读时做Flush。
问题3:您缺少在CryptoStream周围使用,因此很可能不会存储最后一部分数据。调用
cryptoStream.FlushFinalBlock()
在写入部分之前
MemoryStream.ToArray()
电话是一种选择,但是
using
会产生更清洁的代码。