c# - C#StreamReader无法读取行

标签 c# file text streamreader lines

我正在创建一个银行程序,我希望能够读取我的帐户文本文件并将其添加到列表中。我的问题是,它只读取1行,然后读取一行错误,说该行为空,但这不应该是因为第二个应该是年龄。

我希望它不断浏览将数据添加到列表中的帐户,每个帐户都由空白行分隔。

码:

 StreamReader FileToRead = new StreamReader(@"C:\Users\...\Accounts.txt");
        Account NewAccount = new Account();

        string line;

        do
        {
            NewAccount.Name = FileToRead.ReadLine();
            NewAccount.Age = int.Parse(FileToRead.ReadLine());
            NewAccount.Balance = int.Parse(FileToRead.ReadLine());
            NewAccount.Address.Country = FileToRead.ReadLine();
            NewAccount.Address.City = FileToRead.ReadLine();
            NewAccount.Address.FirstLine = FileToRead.ReadLine();
            NewAccount.Address.SecondLine = FileToRead.ReadLine();
            NewAccount.Address.PostCode = FileToRead.ReadLine();
            NewAccount.AccountNumber = int.Parse(FileToRead.ReadLine());
            Accounts.Add(NewAccount);
        } while ((line = FileToRead.ReadLine()) != null);


文本文件:http://pastebin.com/raw.php?i=1r9TEUPx

最佳答案

好吧,我能看到的唯一真正的错误是您没有创建Account的新实例-因此,您要做的就是更改单个帐户的值并将其读入列表-您只会结束并使用存储文件中的最后一个帐户。您需要为循环的每次迭代创建一个新帐户。

关于c# - C#StreamReader无法读取行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13398944/

相关文章:

java - 如何在Java运行时列出源代码文件名?

VB.NET压缩解压字符串并以字符串格式返回

java - 自动完成 JTextField 和箭头键

c# - System.Spatial 程序集问题

c# - 如何确定循环内的语句将使用条件语句执行多少次

C# 函数委托(delegate)

php - 用php读取一个纯文本文件

c# - 在 Entity Framework 中使用 DbContext 运行异步调用

java - 如果移动了特定文件,如何读取它

python - 使用 python watchdog 检查特定文件是否被修改