Zapis elementów listy do pliku

0

mam problem z zapisaniem elementów listy do pliku. Chcę aby były wypisane linijka po linijce tj. , żeby każdy element listy był w osobnej linijce. Lista jest taka:

List<String> deck = new Vector<String>();

String, który chcę wpisać ma taką postać :

deck.add("The " + firstLine + " " + middleLine + " of " + lastLine + " " + (Defense.nextInt(20) + 5) + "/" + (Attack.nextInt(20) + 5))

.

Gdy używam BufferedWriter'a w pliku pojawiają się elementy częściowo poukładane, ale końcu jest śmietnik wszystkich elementów nachodzących na siebie. Gdy używam PrintWriter'a to nie wyświetla mi w osobne linijce tylko wszystko nałożone na siebie(nawet dodanie "\n" nie pomaga). W jaki sposób mogę jeszcze spróbować zapisać elementy listy do pliku?

0

Możesz użyć metody z BufferedWriter'a do nowej lini

newLine();
0

Po co tak? Skoro można:

List<String> lines = deck.stream()
    .map(s->"The " + firstLine + " " + middleLine + " of " + lastLine + " " + (Defense.nextInt(20) + 5) + "/" + (Attack.nextInt(20) + 5))
    .collect(Collectors.toList());
Files.write(Paths.get("/tmp/list"), lines);

Najpierw transformujesz deck na oczekiwany format linii, a potem zapisujesz do pliku.

1 użytkowników online, w tym zalogowanych: 0, gości: 1