我有一个带有" a a"的client.txt文件。作为用户名和密码。如果我没有弄错的话,应该从中读取并告诉我文件中是否存在。
编辑:在clients.txt文件的第二行,我有" b b"作为用户名和密码,他们工作正常。
图片显示:(新用户无法发布图片)
StreamReader sr = new StreamReader("clients.txt");
int findIndex = -1;
string userpass = "#";
while (findIndex == -1 && sr.ReadLine() != null)
{
findIndex = userpass.IndexOf(txtUserName.Text + " " + txtPassword.Password);
userpass = sr.ReadLine();
}
sr.Close();
答案 0 :(得分:3)
你的while()语句正在吞噬线条。您需要在正文中移动ReadLine()调用:
while (findIndex == -1) {
userpass = sr.ReadLine();
if (userpass == null) break;
findIndex = userpass.IndexOf(txtUserName.Text + " " + txtPassword.Password);
}
请勿将密码以明文形式放入文本文件中。
答案 1 :(得分:2)
您在while语句中对sr.Readline的调用将读取(并忽略)文本文件的第一行,因此在第二次调用sr之后,要比较的第一行将是文本文件的第二行。的ReadLine。
您需要重构代码,以便始终捕获对sr.ReadLine的调用的响应。