|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Feb 2007
Città: Senigallia(AN)
Messaggi: 2069
|
[Java]Posizionarsi all'inizio di un file di testo
Salve
Dovrei posizionarmi all'inizio di un file di testo , operazione realizzabile in C con la FGETS. Equivalenti in Java ne conoscete? Grazie mille Saluti
__________________
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
La fgets(...) del C, se non ricordo male, viene usata per leggere una riga da uno stream di un file, tu però parli di posizionamento all'interno di uno stream di un file e questo mi ricorda i file descritptor...
Passando a Java la prospettiva per lavorare con i file di testo si aza di livello. Forse è meglio se ci racconti tutta la storia: cosa devi fare? Copiare un file di testo? Copiarne solo una parte? Le calssi che possono esserti utili, in ogni caso, sono quelle del package java.io @EDIT: in alcuni casi potrebbe essere utile utilizzare uno Scanner (java.util.Scanner): tutto dipende da cosa devi fare. @ARI-EDIT: in questa discusisone puoi trovare qualche spunto sul parsing di file di testo riga per riga
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) Ultima modifica di banryu79 : 23-07-2009 alle 12:39. |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Feb 2007
Città: Senigallia(AN)
Messaggi: 2069
|
Grazie innanzitutto per la risposta
Dovrei "semplicemente" posizionarmi all'inizio di un file dopo averlo scorso tutto o in parte , senza dover per forza chiuderlo e riaprirlo.
__________________
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Allora dovresti maneggiarlo sottoforma di java.io.FileReader e con il metodo reset (vedi documentazione) ti riporti all'ultima pozione "marcata" o, in caso non ne sia stata marcata nessuna esplicitamente, all'inizio del file.
FileReader si usa per leggere stream di caratteri (file di testo), FileInputStream per leggere stream di byte.
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Fermo ti ho dato un consiglio sub ottimale
Usa java.io.BufferedReader costruendolo passandogli come argomento il java.io.FileReader. In questo modo avrai a disposizione anche il comodo metodo readLine, e lo stream sottostante è bufferizzato. Esempio: Codice:
Reader reader = new BufferedReader(new FileReader("myTextFile.txt"));
// read a single line
String line = reader.readline();
...
// reset
reader.reset();
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) Ultima modifica di banryu79 : 23-07-2009 alle 12:58. |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Feb 2007
Città: Senigallia(AN)
Messaggi: 2069
|
Grazie mille
__________________
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:55.



















