Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
800 of 1492 menu
◀ ▶

Метод Peek

StreamReader.Peek возвращает код символа или -1 в конце потока. Два вызова подряд дают одно и то же значение. После Read результат меняется. Есть PeekAsync у связанных API.

Синтаксис

int code = reader.Peek();

Пример

Давайте два раза подряд заглянем в "abcde":

using System; using System.IO; class Program { static void Main() { using var reader = new StringReader("abcde"); int first = reader.Peek(); int second = reader.Peek(); bool res = first == second; Console.WriteLine(res); Console.WriteLine(first); } }

Результат выполнения кода:

True 97

Пример

Давайте сравним Peek до и после Read:

using System; using System.IO; class Program { static void Main() { using var reader = new StringReader("abcde"); reader.Read(); int res = reader.Peek(); Console.WriteLine(res); } }

Результат выполнения кода:

98

Пример

Давайте проверим Peek в конце текста:

using System; using System.IO; class Program { static void Main() { using var reader = new StringReader("a"); reader.Read(); int res = reader.Peek(); Console.WriteLine(res); } }

Результат выполнения кода:

-1

Смотрите также

  • метод Read,
    который сдвигает позицию
  • свойство EndOfStream,
    которое связано с концом
  • StringReader,
    удобный источник для Peek
  • Stream,
    основа StreamReader
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить