|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Sep 2003
Città: Garlasco (PV)
Messaggi: 71
|
[java] bufferedreader
Premessa: ho iniziato da poco
nn c'è qualke modo x sapere il num d righe del file input? es. BufferedReader br = new BufferedReader(new FileReader("input")); se nn c'è è possible fare questo x saperlo? (while br.readLine!=null) {righe++} dopo questo posso ancora utilizzare br x leggere il contenuto di "input" o devo creare un br2? |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2001
Messaggi: 850
|
Non sono sicuro, perchè so solo qualcosina di java, dovrebbe essere il carattere di escape '/n' a determ il cambio riga, cmq secondo me anche col tuo modo (while readline != null... )dovrebbe funzionare.
Ciao |
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Sep 2003
Città: Garlasco (PV)
Messaggi: 71
|
Grazie.....ma io volevo sapere se c'è un metodo (ke nn debba scrivere io) x sapere il num di righe di un file (del genere br.getNumrighe())
....se nn esiste: una volta fatto il "(while br.readLine!=null) {righe++}" (o qualcosa d simile) devo creare un'altro oggetto "BufferedReader br2 = new BufferedReader(new FileReader("input"));" x leggere il file "input" o c'è qualke modo x usare ancora br? |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jul 1999
Città: Torino
Messaggi: 2221
|
Non esiste un metodo, anche perchè come hai intuito è davvero semplice crearselo, va bene il tuo codice!
Ultima modifica di cn73 : 22-01-2004 alle 13:57. |
|
|
|
|
|
#5 |
|
Member
Iscritto dal: Sep 2003
Città: Garlasco (PV)
Messaggi: 71
|
è quello ke pensavo ankio
int righe = 0; BufferedReader br = new BufferedReader(new FileReader("input")); (while br.readLine!=null) {righe++} String[] riga=new String[righe]; for(int c=0; c<righe-1; c++) {riga[c]=br.readLine();} \\questo nn funziona xkè br punta alla prima riga null, giuto? è x questo ke kiedevo se dovevo creare br2 |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jul 1999
Città: Torino
Messaggi: 2221
|
Perchè dovrebbe essere nulla la prima riga?
Comunque se non hai vincoli particolari sulle strutture dati da utilizzare io lo risolverei diversamente...tu probabilmente vuoi sapere a priori il num di righe per dimensionare l'array... invece puoi usare un vector e fare un ciclo finchè ci sono righe... Codice:
String line = ""
Vector righe=new Vector();
while (line != null){
line = br.readLine();
righe.addElement(line)
}
|
|
|
|
|
|
#7 |
|
Member
Iscritto dal: Sep 2003
Città: Garlasco (PV)
Messaggi: 71
|
xkè dopo il ciclo while (ke finisce quando br.readLine()=null) br.readLine() leggerà dalla 1° riga null in avanti
cmq nn sapevo questa storia d Vector.....molto meglio nn è ke hai un link dove posso documentarmi? THX |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Jul 1999
Città: Torino
Messaggi: 2221
|
Scusa, parliamo di questo:
Codice:
for(int c=0; c<righe-1; c++) {riga[c]=br.readLine();}
Cmq di documentazione ce n'è quanta ne vuoi: http://java.sun.com/docs/books/tutorial/index.html PS: i Vector sono una delle classi fondamentali di Java, le trovi in qualunque documento che parli di Java... |
|
|
|
|
|
#9 | |||
|
Senior Member
Iscritto dal: Dec 2001
Città: Milano
Messaggi: 545
|
Re: [java] bufferedreader
Quote:
Quote:
Quote:
__________________
Angus the Hunter @ Realm of magic | Angus Young @ Batracer °SetiEmperor°| Ninja Technologies { qualunque cosa sia, è veloce e fa male (cit.) } |
|||
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Oct 2000
Città: Montreal (Canada)
Messaggi: 1309
|
Quote:
while(br.readLine()!=null){...} dopo tutte le successive chiamate restituiscono null... Soluzione migliore è quella di usare un Vector... Se però è necessario rileggere per forza da capo le soluzioni sono due: 1. creare un nuovo buffered reader 2. marcare il file all'inizio ( -> br.mark(...); ) e successivamente fare il reset(); |
|
|
|
|
|
|
#11 | |
|
Senior Member
Iscritto dal: Dec 2001
Città: Milano
Messaggi: 545
|
Quote:
__________________
Angus the Hunter @ Realm of magic | Angus Young @ Batracer °SetiEmperor°| Ninja Technologies { qualunque cosa sia, è veloce e fa male (cit.) } |
|
|
|
|
|
|
#12 | |
|
Senior Member
Iscritto dal: Jul 1999
Città: Torino
Messaggi: 2221
|
Quote:
|
|
|
|
|
|
|
#13 |
|
Member
Iscritto dal: Sep 2003
Città: Garlasco (PV)
Messaggi: 71
|
Grazie x i consigli
proverò ad usare Vector, mi sembra + figo |
|
|
|
|
|
#14 |
|
Senior Member
Iscritto dal: Sep 2000
Città: lodi-crema-milano.
Messaggi: 12339
|
ot per random: a me interessava il tuo server, quello di questa discussione:
http://forum.hwupgrade.it/showthread...hreadid=605780 come mai è stata chiusa?
__________________
La teoria è quando si sa tutto e niente funziona. La pratica è quando tutto funziona e nessuno sa il perché. Noi abbiamo messo insieme la teoria e la pratica: non c'è niente che funzioni... e nessuno sa il perché! |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:29.



















