Подтвердить что ты не робот

Прочтите фактическое содержимое текстового файла с помощью FileStream и этих параметров С#

Мне нужно открыть текстовый файл в С# с помощью FileStream и с указанными ниже параметрами

var fileStream = new FileStream(filePath, 
                                FileMode.Open, 
                                FileAccess.Read, 
                                FileShare.Read, 64 * 1024,
                               (FileOptions)FILE_FLAG_NO_BUFFERING | 
                                  FileOptions.WriteThrough & FileOptions.SequentialScan);

Текстовый файл содержит "1" или "0", и после получения результатов я собираюсь присвоить содержимое текстового файла строковой переменной. В случае, если вам интересно, мне нужны вышеуказанные параметры, чтобы избежать чтения Windows текстовых файлов из кеша.

System.IO.File.ReadAllText()

... недостаточно.

Кто-нибудь будет достаточно любезен, чтобы написать простой подраздел, который включает в себя эти требования для меня, как примеры, которые я видел до сих пор, включая работу с байтами и буферами (область, в которой я действительно должен работать в это время) и оставляет это при этом.

Спасибо

4b9b3361

Ответ 1

Может быть что-то вроде:

    FileStream fileStream = new FileStream("[path]", FileMode.Open, FileAccess.Read, FileShare.Read, 64 * 1024,
        (FileOptions)0x20000000 | FileOptions.WriteThrough & FileOptions.SequentialScan);

    string fileContents;
    using (StreamReader reader = new StreamReader(fileStream))
    {
        fileContents = reader.ReadToEnd();
    }


    bool assignedvariable = Convert.ToBoolean(fileContents);

assignvariable будет иметь значение true, если файл содержит 1 и false, если он содержит 0.

Извините, если на это был дан ответ, люди отправляются здесь очень быстро.

Ответ 2

Вы можете использовать StreamReader для чтения из потока:

string contents;
using(var sr = new StreamReader(fileStream))
{
   contents = sr.ReadToEnd();
}

Ответ 3

File.ReadAllBytes

или

File.ReadAllText

Оба теоретически будут использовать кеш файлы Windows.

Прочитайте этот для лучшего понимания и для некоторых ограничений на FILE_FLAG_NO_BUFFERING, а также прочитайте fooobar.com/info/485032/...