Come leggere un file di testo e archiviarlo in un array in java

Come leggere un file di testo e archiviarlo in un array in java
Java ci consente di leggere un file utilizzando metodi diversi e mettere i contenuti del file in un array. Dato che potresti non avere idea del numero esatto di righe o parole in un file, è meglio utilizzare il tipo di archiviazione della raccolta per archiviare il contenuto del file anziché un array statico. Questo array può essere utilizzato per elaborare le sue linee o solo per scopi di lettura.

Questo articolo descriverà i metodi per leggere un file di testo in Java e archiviarlo in un array.

Come leggere un file di testo e archiviarlo in un array?

Esistono quattro metodi per leggere il contenuto di un file, come:

  • La classe dello scanner
  • La classe BufferedReader
  • Il metodo Readalllines ()
  • La classe FileReader

Nota: Per lo scopo dimostrativo, in primo luogo, creeremo un file di testo chiamato "Javafile.TXT"Questo contiene il seguente testo:

Imparajava
Linuxhint

Ora discuteremo i metodi Java più comunemente usati per lo scopo menzionato.

Metodo 1: leggi un file di testo e memorizzalo in un array usando la classe scanner

In Java, il "Scanner"La classe appartiene a Java.pacchetto util utilizzato per leggere i dati dagli utenti per tipi di dati primitivi. Può anche essere usato per leggere il contenuto da un file. Per caricare il contenuto da un file, lo scanner viene utilizzato in combinazione con file o fileReader.

Dai un'occhiata a un esempio per comprendere l'uso dello scanner per la lettura di un file di testo e la memorizzazione in un array.

Esempio
In questo esempio, in primo luogo, creeremo un tipo di arraylist di tipo String chiamato "stngfile"Per archiviare il contenuto di testo di un file:

Elenco stngfile = new ArrayList();

Quindi, caricheremo il testo del nostro "Javafile.TXT"Creando un nuovo oggetto della classe scanner e passare il percorso del file come argomento:

Scanner SCNR = nuovo scanner (nuovo fileReader (
"C: \\ Users \\ Mughal's \\ desktop \\ java \\ javafile.TXT"));

Come condizione del "Mentre"Loop, usa"hasNext ()"Metodo per verificare se sono rimaste o meno stringhe nel file. Nel suo corpo, l'oggetto scanner creato leggerà il testo del file e lo memorizzerà nell'ArrayList "stngfile":

String STR;
mentre (scnr.hasNext ())
str = scnr.Prossimo();
stngfile.Aggiungi (STR);

Dopo aver ricevuto tutto il testo del file in ArrayList, convertilo in Array usando "Toarray ()" metodo:

Infine, stampare i valori memorizzati nell'array utilizzando IL "per ciascuno" ciclo continuo:

per (stringa ogniString: array)
Sistema.fuori.println (ognistring);

L'output fornito indica che abbiamo letto correttamente un file di testo usando l'oggetto Classe Scanner e archiviato il suo contenuto in un array:

Guarda la sezione di seguito donata per utilizzare la classe BufferedReader per la lettura di un file di testo.

Metodo 2: leggi un file di testo e memorizzalo in un array usando la classe BufferedReader

"BufferedReader"È un'altra classe Java utilizzata per leggere e caricare il contenuto del file in combinazione con il fileReader. I file di caratteri vengono letti utilizzando la classe FileReader. Esegue un'operazione di lettura su ogni carattere nel file. Per leggere e caricare il contenuto da un file utilizzando la classe BufferedReader è significativamente più veloce rispetto ad altri metodi.

Esempio
Innanzitutto, creeremo un oggetto della classe BufferedReader passando il percorso del file ad esso:

BufferedReader Bfredr = New BufferedReader (nuovo fileReader
("C: \\ Users \\ Mughal's \\ desktop \\ java \\ javafile.TXT"));

IL "Bfred"L'oggetto leggerà una riga dal file specificato usando"linea di lettura()"Metodo e memorizzalo in"testo"Variabile del tipo di stringa:

String text = bfredr.linea di lettura();

Successivamente, aggiungi un "Mentre"Loop che esegue fino al valore del"testo"La variabile diventa"nullo". All'interno del corpo, aggiungeremo il valore corrente della variabile di testo al "stngfile"ArrayList e aggiorna il suo valore in base al contenuto della riga successiva:

mentre (testo != null)
stngfile.Aggiungi testo);
text = bfred.linea di lettura();

Bfred.vicino();

Quindi, converti il ​​raggio creato in un array usando il "Toarray ()" metodo:

String [] array = stngfile.Toarray (nuova stringa [0]);

Infine, stamperemo i valori di testo memorizzati nell'array con l'aiuto di "per ciascuno" ciclo continuo:

per (stringa ogniString: array)
Sistema.fuori.println (ognistring);

Produzione

Abbiamo presentato le informazioni relative alla lettura di un file di testo e allo memorizzazione in un array in Java.

Conclusione

Per leggere un file di testo e memorizzarlo in un array, Java fornisce molti metodi come scanner, bufferedReader e classi fileReader e il metodo ReadaLLINES (). Tuttavia, i programmatori Java preferiscono le classi scanner e bufferreder perché l'oggetto bufferedReader è più veloce e l'oggetto scanner è meglio per analizzare i dati di testo. In questo articolo, abbiamo descritto i metodi per leggere un file di testo e archiviarlo in un array in Java in dettaglio.