StreamReader показывает содержимое функции WriteLine, но возвращает пустое значение, если оно используется в переменной.

Может ли кто-нибудь помочь мне решить это? Когда я использую ридер в WriteLine, он отлично записывает сообщение, но когда я пытаюсь сохранить его как переменную, он возвращает пустую строку. Я делаю это, потому что потом хочу сохранить журнал в файле.

using (var stream = ex.Response.GetResponseStream())
                using (var reader = new StreamReader(stream, Encoding.UTF8))
                {
                    stream.Seek(0, SeekOrigin.Begin);
                    Console.WriteLine("Username: " + usernames[i]);
                    Console.WriteLine(reader.ReadToEnd());
                    content = reader.ReadToEnd().ToString();
                    Console.WriteLine(content);
                    Console.WriteLine("URL: https://api.bitbucket.org/2.0/users/" + usernames[i] + "\n");
3 метода стилизации элементов HTML
3 метода стилизации элементов HTML
Когда дело доходит до применения какого-либо стиля к нашему HTML, существует три подхода: встроенный, внутренний и внешний. Предпочтительным обычно...
Формы c голосовым вводом в React с помощью Speechly
Формы c голосовым вводом в React с помощью Speechly
Пытались ли вы когда-нибудь заполнить веб-форму в области электронной коммерции, которая требует много кликов и выбора? Вас попросят заполнить дату,...
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Будучи разработчиком веб-приложений, легко впасть в заблуждение, считая, что приложение без JavaScript не имеет права на жизнь. Нам становится удобно...
Flatpickr: простой модуль календаря для вашего приложения на React
Flatpickr: простой модуль календаря для вашего приложения на React
Если вы ищете пакет для быстрой интеграции календаря с выбором даты в ваше приложения, то библиотека Flatpickr отлично справится с этой задачей....
В чем разница между Promise и Observable?
В чем разница между Promise и Observable?
Разберитесь в этом вопросе, и вы значительно повысите уровень своей компетенции.
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Клиент для URL-адресов, cURL, позволяет взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
0
0
25
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Читатель читает в одном направлении: вперед. Если вы хотите прочитать одно и то же значение дважды, вы должны сделать резервную копию и прочитать его снова.

Измените код следующим образом:

using (var stream = ex.Response.GetResponseStream())
using (var reader = new StreamReader(stream, Encoding.UTF8))
{
    stream.Seek(0, SeekOrigin.Begin);
    Console.WriteLine("Username: " + usernames[i]);
    Console.WriteLine(reader.ReadToEnd());

    stream.Seek(0, SeekOrigin.Begin);
    content = reader.ReadToEnd().ToString();
    Console.WriteLine(content);
    Console.WriteLine("URL: https://api.bitbucket.org/2.0/users/" + usernames[i] + "\n");

Мой поток.Seek выдает ошибку: указанный метод не поддерживается

Pedro William 22.04.2022 22:15

@PedroWilliam: если ваш поток не поддерживает поиск, вы не сможете прочитать одно и то же значение дважды. Вообще. Поэтому сохраните результат первого reader.ReadToEnd() в переменную, а затем используйте эту переменную дважды.

Ben Voigt 22.04.2022 22:25

Ты - ангел!!! Большое спасибо. Сначала сохранил в переменную, и это сработало.

Pedro William 22.04.2022 22:27

Другие вопросы по теме