C# CryptoStream FlushFinalBlock System.OutOfMemoryException

ОБНОВИТЬ

Я хочу зашифровать большой файл (например, более 180 месяцев). Но я получил System.OutOfMemoryException с FlushFinalBlock().

Кажется, это ценный метод, потому что он "заканчивает" шифрование моих данных дополнительными байтами в верхнем и нижнем колонтитулах моего потока (может быть, в заполнении?).

Есть ли способ не иметь эту ошибку или использовать другой метод?

вот мой код:

    MemoryStream memoryStream = new MemoryStream();

    // Define cryptographic stream (always use Write mode for encryption).
    CryptoStream cryptoStream = new CryptoStream
    (
        memoryStream,
        encryptor,
        CryptoStreamMode.Write
    );

    // Start encrypting.
    cryptoStream.Write(byteArray, 0, byteArray.Length);
    // Finish encrypting.
    cryptoStream.FlushFinalBlock();

0 ответов

Другие вопросы по тегам