logo

Come leggere il file riga per riga in Java

Esistono i seguenti modi per leggere un file riga per riga.

rotazione dell'albero avl
  • Classe BufferedReader
  • Classe scanner

Utilizzo della classe BufferedReader

L'uso della classe Java BufferedRedaer è il modo più comune e semplice per leggere un file riga per riga in Java. Appartiene a java.io pacchetto. La classe Java BufferedReader fornisce il metodo readLine() per leggere un file riga per riga. La firma del metodo è:

 public String readLine() throws IOException 

Il metodo legge una riga di testo. Restituisce una stringa contenente il contenuto della riga. La riga deve terminare con un avanzamento riga (' ') o un ritorno a capo (' ').

Esempio di lettura di un file riga per riga utilizzando la classe BufferedReader

Nell'esempio seguente, Demo.txt viene letto dalla classe FileReader. Il metodo readLine() della classe BufferedReader legge il file riga per riga e ogni riga viene aggiunta a StringBuffer, seguita da un avanzamento riga. Il contenuto di StringBuffer viene quindi inviato alla console.

comando chown
 import java.io.*; public class ReadLineByLineExample1 { public static void main(String args[]) { try { File file=new File('Demo.txt'); //creates a new file instance FileReader fr=new FileReader(file); //reads the file BufferedReader br=new BufferedReader(fr); //creates a buffering character input stream StringBuffer sb=new StringBuffer(); //constructs a string buffer with no characters String line; while((line=br.readLine())!=null) { sb.append(line); //appends line to string buffer sb.append('
'); //line feed } fr.close(); //closes the stream and release the resources System.out.println('Contents of File: '); System.out.println(sb.toString()); //returns a string that textually represents the object } catch(IOException e) { e.printStackTrace(); } } } 

Produzione:

Come leggere il file riga per riga in Java

Utilizzando la classe Scanner

Giava Scanner La classe fornisce più metodi di utilità rispetto alla classe BufferedReader. La classe Java Scanner fornisce il metodo nextLine() per facilitare riga per riga il contenuto del file. Il metodo nextLine() restituisce la stessa stringa del metodo readLine(). La classe Scanner può anche leggere un file da InputStream.

Esempio di lettura di un file riga per riga utilizzando la classe Scanner

ordinamento delle bolle in Java
 import java.io.*; import java.util.Scanner; public class ReadLineByLineExample2 { public static void main(String args[]) { try { //the file to be opened for reading FileInputStream fis=new FileInputStream('Demo.txt'); Scanner sc=new Scanner(fis); //file to be scanned //returns true if there is another line to read while(sc.hasNextLine()) { System.out.println(sc.nextLine()); //returns the line that was skipped } sc.close(); //closes the scanner } catch(IOException e) { e.printStackTrace(); } } } 

Produzione:

Come leggere il file riga per riga in Java