Ragazzi qualcuno mi potrebbe spiegare come si può leggere un file partendo da una precisa posizione??Mi spiego meglio: io vorrei leggere un file per esempio partendo dalla quinta riga e trascurando le precedenti!!I metodi della classe BufferedReader e FileReader come mi posso aiutare in questo???io avevo pensato( ovviamente sbagliando perchè l'ho provato e non fa assolutamente quello che voglio io!!) di scrivere if((c=in.read())== 5) come condizione per leggere la quinta riga(ho pensato questo perchè ho pensato se il -1 corrisponde al EOF e l'EOF si trova nell'ultima riga, vuol dire che -1 è l'ultima riga e quindi se gli do 5 leggerà dalla quinta riga!!.....ma non è andata per niente così!!)Allego un programma di prova che ho scritto in modo da capire come si può fare ed eventualmente implementare questa soluzione in un altro programma che sto facendo!!
PS. Lasciate stare il catch perchè visto che è un programma di prova e non scatena alcuna eccezione allora non mi interessava scrivere in dettaglio il modo per catturare le eccezioni!!codice:import java.io.FileReader; import java.io.FileWriter; import java.io.BufferedReader; import java.io.BufferedWriter; public class LeggiRiga { public static void main(String args[]) throws Exception { FileReader in=null; FileWriter out=null; BufferedReader br=null; BufferedWriter bw=null; try { String str; in=new FileReader("prova.txt"); out=new FileWriter("output.txt"); br=new BufferedReader(in); bw=new BufferedWriter(out); int c=in.read(); while((str=br.readLine())!=null) { if(c== 5) bw.write(str); bw.newLine(); } } catch(Exception e) { System.out.print("Exception"); } finally { br.close(); bw.close(); in.close(); out.close(); System.out.println("**** DONE ****"); } } }
Grazie a tutti!!!

Rispondi quotando