我想創建一個文件「myFile」,它使用特定的密鑰加密第一部分,並使用特定的密鑰對最後一部分進行加密。到目前爲止,我有這樣的事情:與C#中的一個文件相關聯的兩個CryptoStreams
cs1 = new CryptoStream(myFile, symmetricKey1.CreateEncryptor(key1, key1IV), CryptoStreamMode.Write);
cs2 = new CryptoStream(myFile, symmetricKey2.CreateEncryptor(key2, key2IV), CryptoStreamMode.Write);
而且我想用CS1寫入文件的第一部分和第二與CS2的排序是這樣的:
while((data = fs1.readByte()) != -1){
cs1.WriteByte(data);
}
while((data = fs2.readByte()) != -1){
cs2.WriteByte(data);
}
此情況下,不錯誤,但第二個CryptoStream(cs2)實際上並沒有寫入文件。有誰知道爲什麼會發生?有一個更好的方法嗎? 感謝
編輯:關閉的CryptoStream似乎並關閉MYFILE爲好,但如果我關閉並重新打開,然後開始第二CryptoStream的,這似乎是雖然它不是作爲清潔工作,我所希望的。謝謝您的幫助!