我想用SourceFileName编写FileStream,但是当我创建代码时,会出现一条错误消息,指出正在使用文件流。如何交替,所以我打开源文件,然后将其写下来,然后存储在相同的源文件中。感谢
SourceFileName = output
以下是代码:
public void Encrypt(string SourceFileName, string output, string Key)
{
try
{
FileStream FS1 = null; FileStream FS2 = null;
FS1 = new FileStream(SourceFileName, FileMode.Open);
FS2 = new FileStream(output, FileMode.OpenOrCreate);
byte[] input = new byte[FS1.Length];
FS1.Read(input, 0, input.Length);
byte[] Encrypted = Encrypt(input, Key);
FS2.Write(Encrypted, 0, Encrypted.Length);
FS2.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
答案 0 :(得分:0)
您无法以这种方式读取和写入同一文件。你有两个选择:
答案 1 :(得分:0)
打开文件时必须指定共享选项
FS1 = new FileStream(SourceFileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)