我在文件中存储的是与帐户相关的值。 (只是测试,不会被商业使用)。我需要的是通过遍历每一个新行来绘制用户名和密码的值,但.peek()似乎不适用于我。我究竟做错了什么?我的块看起来像这样:使用StreamReader从文本文件中读取新行
public string CheckAccount(string username, string password)
{
StreamReader sr;
string filename = "H:\\AccountInfo.txt";
string s;
string result = "";
sr = File.OpenText(filename);
s = sr.ReadLine();
string usernameFromText;
string passwordFromText;
while (sr.Peek() >= 0)
{
usernameFromText = (s.Split(','))[0];
passwordFromText = (s.Split(','))[2];
if (username == usernameFromText && password == passwordFromText)
{
result = "Successfully Logged in!";
}
else if (username != usernameFromText || password != passwordFromText)
{
result = "Your Username/Password is Invalid!";
}
}
sr.Close();
return result;
}
我的代码不读取从第二行开始,它只是挂起。
如果您使用的是.NET 4,则使用File.ReadLines会更好......无需加载整个文件即可开始使用。 –