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");

阅读器单向读取:向前读取。如果你想读取相同的值两次,你必须备份并再次读取。

按如下方式修改代码:

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");

最新更新