Gå til innhold

Anbefalte innlegg

Hei. jeg skal skrive noe tekst til fil. Dette er forsåvidt en enkel greie, men problemet er at jeg vil at det nye jeg legger til hver gang jeg kjører filskrivings-metoden skal legge seg øverst i filen jeg skriver til.

 

Sånn som det er nå, føyer den bare tekst til under det som allerede står i filen. Dette skal forøvrig brukes til en JSP. Slenger ved det aktuelle utdraget av koden:


FileWriter fileConnection = new FileWriter (file, true);

PrintWriter writer = new PrintWriter(new BufferedWriter(fileConnection));



writer.println("<font size=5><b>" + title + "</b></font> - <i>" +   author + "</i><br>");

writer.println("<font size=3>" + date + " - " + time + "</font><br>");

writer.println("<hr color=black size=1>");

writer.println(news);

writer.println("<hr color=black size=1>");

writer.close();

 

Om noen har noen forslag hadde de blitt mottatt med takk!

Lenke til kommentar
Videoannonse
Annonse

Tror ikke du kan få det til sånn uten videre. Du har vanligvis bare to muligheter i OS for å åpne og skrive til en fil: replace og append. Append vil alltid legge til bakerst i filen.

Det du kanskje kan gjøre er å lese inn filen til en StringBuffer, putte den nye teksten foran i bufferen (insert), og skrive alt ut igjen uten append.

Lenke til kommentar

Du må nok lese inn filen og skrive den på nytt ja.

 

Meg bekjent er støtter ikke de vanligste filsystemene og operativsystemene å sette inn nye blokker med data foran i en fil, alle utvidelser skjer alltid bakover, en implementasjon av den typen vil uansett medføre at alt foran vil måtte flyttes.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...