Попытка сохранить данные, которые я имею в текстовом файле внутри массива - PullRequest
0 голосов
/ 24 апреля 2020

Попытка Java Не слишком уверен, как сохранить информацию из текстового файла в массив, мой массив объектов билетов имеет имя адрес, а затем номер, чем номера билетов, которые являются массивами

public static void readTicket(ArrayList<Ticket>tickets) throws IOException
    {
        String name;
        String address;
        int phone;
        int [] numbers;
        //1 create file
        File file1 = new File("ticketdata.txt");        
        //2 create a file writer class
        FileWriter fw = new FileWriter(file1);
        //3 create a print writer class
  //pass participants through

        Scanner scan = new Scanner(file1);

        while(scan.hasNextLine())
        {
            name = scan.next();
            address = scan.next();
            phone = scan.nextInt();
            numbers = scan.next(); //error
            tickets.add(new Ticket(name, address, phone, numbers));
            System.out.println(scan.nextLine());
        }
    }

Я знаю, что я сделал, вероятно, совершенно неправильно. также это то, что у меня есть в моем ticketdata.txt

Maribel Lagos 899545432 1 2 3 4
Rilwan London 899677667 2 3 5 10
Darren Dundalk 899778998 13 15 19 20
Masaki Tokyo 899765431 4 9 11 23

1 Ответ

0 голосов
/ 24 апреля 2020

Вы можете прочитать оставшиеся числа с помощью forEachRemaining, а затем преобразовать в массив с помощью toArray()

 while(scan.hasNextLine())
{
    List<Integer> numbersList = new ArrayList<>();
    name = scan.next();
    address = scan.next();
    phone = scan.nextInt();
    numbers = scan.forEachRemaining(e->numbersList.add(Integer.valueOf(e))); 
    tickets.add(new Ticket(name, address, phone, numbersList.toArray()));
    System.out.println(scan.nextLine());
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...