Java zapis do pliku w danej linii.

0

Witam.
Mam następujący problem:
Chcę do istniejącego pliku klienci.txt dopisać jedną linie, ale w wybranym wierszu. Np. jeśli zmienna imiejsce=4, to chciałbym aby tekst został zapisany w 4 linii.
Wszystko jest ok. Poniższy program mi to realizuje, tylko problem polega na tym, że za każdym razem program zamienia mi zawartość pliku, tzn: miałem tekst w linii 4, a teraz chce dopisać tekst do linii 6, tak aby tekst byl i w 4 i 6 linii. Niestety jest tylko w linii 6 .... :(
Pomocy

        <code>File plik=new File("klienci1.txt");
        try{
            PrintWriter out=new PrintWriter(plik);
            for (int i=1; i<=imiejsce; i++)
            {if(i==imiejsce)
                    out.println("Nr: "+miejsce+"   Klient: "+klient+"    Telefon:"+telefon);
                    else
                    out.println();
            }
      
            out.close();
        } catch(IOException e) 

{ JOptionPane.showMessageDialog(this, "Problem z obsługą pliku \n", "Błąd krytyczny!", 0);
}


Wiem, że problem tkwi w miejscu gdzie jest:
                        else
                        out.println()
ponieważ wydaje mi się że program zamienia mi wtedy linie w której był tekst na pustą linie z tekste...
0

Bo jak robisz coś takiego:

PrintWriter out=new PrintWriter(plik);

To plik jest tworzony od nowa, i dlatego ci się zapisuje tylko do 6 lini ;) Poczytaj o takiej klasie:
RandomAccessFile

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