Сохранение строк в 2d-массиве и их повторное использование для ввода проверки - PullRequest
0 голосов
/ 08 мая 2020

У меня есть текстовый файл с именем userlogin.txt. Он содержит

Ccustomer1lastname, 9774ASU, Customer
Ccustomer2lastname, 6979ASU, Customer
mman, 4234ASU, Manager

. Я хотел бы сохранить все эти строки в 2d-массиве, где я мог бы вызывать их, а затем использовать их для проверки, когда пользователь пытается войти в систему как Manager, Employee (не указан) или Customer. Это то, что у меня есть, но, похоже, ничего не работает. Это мой вход только для Manager, и, по сути, то же самое для Employee и Customer

Я почти уверен, что мне нужно сохранить его в 2D-массиве, но я не могу . В основном что-то вроде

String[] someArray = new String[0][0] это Ccustomer1lastname

String[] someArray = new String[0][1] это 9774ASU

et c et c

        boolean loginSuccessful = false;
        int i = 0;
        int j = 0;
        String[] array;
        while ((line = reader.readLine()) != null) {
            array = line.split(", ");
            storedUsername[i] = array[0];
            storedPassword[j] = array[1];
            i++;
            j++;

        }

        System.out.println("Hello, are you a manager, employee, or customer?");


        decision = scan.next();

        if (decision.equalsIgnoreCase("manager")) {
            do {
                System.out.println("Please enter username");
                username = scan.next();
                System.out.println("Please enter password");
                password = scan.next();

                // TODO allow different logins
                if (username.equalsIgnoreCase(storedUsername[i]) && password.equalsIgnoreCase(storedPassword[j])) {
                //if (username.equalsIgnoreCase("a") && password.equalsIgnoreCase("a")) {
                    loginSuccessful = true;
                    System.out.println("\nWelcome, Manager\n");
                    Manager m = new Manager();
                    m.displayManagerMenu();
                } else {
                    System.out.println("\nSorry, we don't recognize those credentials\n");
                }
            } while (!loginSuccessful);

        }

Я не уверен, что мой начальный while l oop вообще работает и хранит массив. Я так не думаю. Я не уверен, как подойти к этой проблеме, поскольку она отличается от тех, что я видел здесь, поскольку они хранят char и int.

По сути, когда мне предлагается войти как manager, я хочу иметь возможность войти, используя mman и 4234ASU в качестве логина, и, таким образом, предлагать m.displatManagerMenu()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...