Jak zapisać tekst w pamięci komputera?

0

Witam. Niedawno zacząłem uczyć się języka JAVA i natrafiłem na problem. Chciałbym stworzyć program, który prosi użytkownika o podanie imion, a następnie zapisuje je w pamięci, jednak mój projekt zapisuje tylko ostatnie podane imię. Co zrobić, aby zapisywał wszystkie imiona? Poniżej wklejam kod:

import java.util.Scanner;
import java.io.FileNotFoundException;
import java.io.File;
import java.io.PrintWriter;

public class Sprawdzenie{
	public static void main(String[]args)throws FileNotFoundException{
		File plik=new File("Sprawdzacz.txt");
		String[]tab=new String[5];
		Scanner odczyt=new Scanner(System.in);
		Scanner czytaj=new Scanner(plik);
		
		for(int i=0;i<5;i++){
			System.out.println("Podaj "+(1+i)+" imie");
			tab[i]=odczyt.nextLine();
			
			PrintWriter zapis= new PrintWriter("Sprawdzacz.txt");
			zapis.println(tab[i]);
			zapis.close();
		}
		
		for(int i=0;i<5;i++)
			System.out.println("Witaj "+tab[i]);
	}
}

Z góry dziękuję za pomoc!

0

Otworzyć plik raz, przed pętlą. Wpisać imiona. Zamknąć plik za pętlą.

1

Wyciągnij wszystkie linie z "new" i "close" poza pętle for.
Tzn.

Cos-tam cos-tam = new Cos-tam();
for(cos-tam) {
  wiecej-cos-tam;
}
cos-tam.close();

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