new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.Read, FileOptions.SequentialScan);
or
using (var fileStream = new FileStream("foo.bar", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
or
FileStream fileStream = new FileStream("[path]", FileMode.Open, FileAccess.Read, FileShare.Read, 64 * 1024,
(FileOptions)0x20000000 | FileOptions.WriteThrough & FileOptions.SequentialScan);
or
FileShare.ReadWrite | FileShare.Delete
Example:
var fs = new FileStream(FilePathOpen, FileMode.Open, FileAccess.Read, FileShare.ReadWrite|FileShare.Delete); using (StreamReader reader = new StreamReader(fs)) { // Read the entire file into a string string fileContent = reader.ReadToEnd(); // Split the file content into an array of strings string[] lines = fileContent.Split(new[] { "\r\n", "\r", "\n" }, StringSplitOptions.None); // Get the last line of the file string lastLine = lines[lines.Length - 2]; // Split the last line into an array of strings string[] tokens = lastLine.Split(new char[] { ' ', '\t' }, StringSplitOptions.RemoveEmptyEntries); float value; if(tokens.Length == 22) if (float.TryParse(tokens[15], NumberStyles.Float, NumberFormatInfo.InvariantInfo, out value)) { Values[1]= value*(float)1e6; } // Close the file reader.Close(); }