Originariamente inviato da Neds
avevo già pensato al readLine, ma volevo evitare di creare una stringa per ogni riga e poi dividere la stringa nelle parole per elaborarle, in quanto nel file ci sono più righe, avrei preferito un codice che fosse simile allo StringTokenizer ma che non si interrompesse alla fine della riga(cioè che continuasse a leggere non tenendo conto dell'interruzione di riga)in modo che con un comando mi creo tante stringhe quante sono le parole nel file.
cmq grazie lo stesso
Puoi sempre leggere prima tutto il file, memorizzando tutte le linee in una sola stringa e poi passare quella stringa allo StringTokenizer:
codice:
BufferedReader br = new BufferedReader( new InputStreamReader( new FileInputStream("file.txt") ) );
// Leggo tutto il file e memorizzo in una stringa
String linea = "";
String contenuto = "";
while ((linea = br.readLine()) != null) {
if (!linea.equals(""))
contenuto += "," + linea
}
// Ora costruisco lo StringTokenizer; separatori: virgola e spazio
StringTokenizer st = new StringTokenizer(contenuto, ", ");
// Ottengo tutte le parole
String [] parole = new String[st.countTokens()];
while (st.hasMoreTokens()) {
parole[i] = st.nextTokens();
}
Ciao.