Cześć, (jestem początkujący jak widać po zadaniu... i mam mały problem) Stworzyłem choinkę w osobnej klasie i zapisałem ją do pliku. Teraz odczytuje choinkę w kolejnej klasie w tym przypadku public class OdczytChoinki i musze zweryfikować czy tak choinka ma odpowiednią ilość gwiazdek "*" i odpowiednią ilość spacji " " w wierszu. .
Logicznie wiem jak to ma wyglądać ale nie umiem napisać warunku w javie. W sensie jak odczytać z pliku tą ilość spacji i ilość gwiazdek w każdym wierszu....
Dla przykładu
Wysokość choinki = 4
*
***
*****
*******
public class OdczytChoinki {
// Wyobrażam sobie to tak:
// jeśli choinka ma wysokość 2 to liczba wierszy = 2
// jeśli choinka ma wysokość 3 to liczba wierszy= 3
// jeśli choinka ma wysokość 4 to liczba wierszy = 4
//
// jeśli choinka ma wysokość 2 to liczba spacji = to w 1 wierszu są 2 spacje, a w drugim 1.
// jeśli choinka ma wysokość 3 to liczba spacji = to w 1 wierszu są 3 spacje, w drugim 2, a w trzecim 1.
// jeśli choinka ma wysokość 4 to liczba spacji = to w 1 wierszu są 4 spacje, w drugim 3, a w trzecim 2, a w czwartym 1.
// jeśli choinka ma wysokość 2 to liczba gwiazdek = to w 1 wierszu są 1 gwiazdka, a w drugim 3.
// jeśli choinka ma wysokość 3 to liczba gwiazdek = to w 1 wierszu są 1 gwiazdka, w drugim 3, a w trzecim 5.
// jeśli choinka ma wysokość 4 to liczba gwiazdek = to w 1 wierszu są 1 gwiazdka, w drugim 3, w trzecim 5, a w czwartym 7,.
// Tutaj jest tylko odczyt z pliku tej choinki po znaku, wydaje mi się że to będzie najlepsze rozwiązanie tylko jak ten warunek napisać..
boolean verifyChristmasTreeFromFile(String file) throws IOException {
FileReader odczyt = new FileReader(file);
int znak;
while ((znak = odczyt.read()) != -1) {
System.out.println((char) znak);
}
odczyt.close();
if () return true; // nie wiem jak stworzyć te warunki.
}
}
List<String> lines = Files.readAllLines(Paths.get(file))
. To odczytuje cały plik jako listę linii.vpiotr