2d数组文本文件c#登录不工作

本文关键字:登录 工作 文件 数组 文本 2d | 更新日期: 2023-09-27 18:12:56

我最近写的一段代码遇到了麻烦。该代码的目的是读取包含用户详细信息的文本文件,检查他们的登录信息,然后允许他们登录。然而,我有麻烦,当我执行代码。只有最后一行的文本文件是"工作"。程序可以注册多个用户名,但它总是认为密码不正确。我不知道如何更好地解释这一点。如果您有任何问题,请提出来,谢谢帮助。

这是我的代码

private void button1_Click_1(object sender, EventArgs e)
        {
            string UserList;
            string UsernameString;
            UserList = File.ReadAllText(@"C:'Users'dagostinom18'Documents'Visual Studio 2015'Projects'Assignment'Assignment'users.txt");
        int iLength = UserList.Length;
        string[,] users = new string[iLength, iLength];
        foreach (var row in UserList.Split(''n'))
        {
            int y = 0;
            foreach (var col in row.Trim().Split(','))
            {
                int x = 0;
                users[x, y] = col.Trim();
                if (users[x, y] == Username.Text)
                {
                    UsernameCheck = true;
                    UsernameString = Username.Text;
                    RowNumber = x;
                }
                y++;
            }
        }
        if (UsernameCheck == false)
        {
            LoginError.Text = "No such username";
        }
        else
        {
            if (Password.Text == users[RowNumber, 1])
            {
                Main f3 = new Assignment.Main(); 
                Form1 f4 = new Assignment.Form1();
                f3.Show(); 
                MessageBox.Show("Welcome ");

            }
            else
            {
                LoginError.Text = "Incorect Password";
            }
        }
    }

这是我的文本文件的样子

matt, 12345
admin, 67890
test, abcde

2d数组文本文件c#登录不工作

你的代码在更干净的状态下应该是这样的。

string password = PasswordTxt.Text//you should use your control names
string userName = UserNameTxt.Text//your control
bool validUsers = false;
foreach (var line in File.ReadLines("@"C:'Users'dagostinom18'Documents'Visual Studio 2015'Projects'Assignment'Assignment'users.txt""))
{
   string textUserName = line.Split(',')[0].Trim();
   string textPassword = line.Split(',')[1].Trim();
   validUsers = textUserName == userName && textPasword == password;
}
if(!validUsers)
{
    //show error, user credentials are not valid
    return;
}
//go log in.