我想弄清楚如何编写FileStream
和BinaryWriter
的二进制文件,并在写入时保持文件锁定以供读取。我特别不希望其他应用程序/进程能够在写入时从其中读取数据。如何在通过FileStream写入文件时锁定文件?
//code to declare ba as a byte array
//dpath is the path to the file
FileStream BinaryFile = new FileStream(dpath, FileMode.Create, FileAccess.Write);
BinaryWriter Writer = new BinaryWriter(BinaryFile);
Writer.Write(ba);
Writer.Close();
BinaryFile.Dispose();
现在的问题是该文件可以在写入期间由其他应用程序打开,这在我当前的应用程序中是不受欢迎的。 FileStream
有一个锁定方法,但锁定写入而不是读取,所以这对我没有帮助。