У меня есть текстовый файл с максимум 4 строками для чтения. Каждая строка содержит смесь строк и целых чисел, разделенных табуляцией.
Я успешно заставил мою программу прочитать 1 строку и сохранить всю информацию в соответствующем месте, а также сохранить новый объект в массиве.
Проблема: я не могу понять, как заставить его читать несколько строк при сохранении нового объекта в массиве в зависимости от прочитанной строки.
Вот мой метод, который берет файл и сохраняет объект в массиве:
public void addVehicle(Vehicle Honda[]) throws FileNotFoundException
{
Scanner reader = new Scanner(file);
if(canAddVehicle() == true)
{
for(int i = 0; i < vehicles.length; i++)
{
if(vehicles[i] == null)
{
Honda[i] = new Vehicle();
Honda[i].readRecord(reader);
vehicles[i] = Honda[i];
reader.close();
break;
}
}
System.out.println("Vehicle Added!");
}
else
{
System.out.println("You can not add more than 4 vehicles.");
}
}
И метод readRecord ():
public void readRecord(Scanner reader)
{
while(reader.hasNextLine())
{
setMake(reader.next());
setModel(reader.next());
setYear(reader.nextInt());
setvin(reader.next());
setValue(reader.nextDouble());
setMilesDriven(reader.nextInt());
setLastOilChange(reader.nextInt());
}
reader.close();
}