Я пытаюсь понять, как писать двоичный файл с FileStream
и BinaryWriter
, и держать файл заблокированным для чтения во время записи. Я специально не хочу, чтобы другие приложения/процессы могли читать с того момента, пока оно написано.
//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
имеет метод блокировки, но он блокируется для записи, а не для чтения, поэтому мне это не помогает.