2013-04-16 20 views
15

Wie können wir Daten aus einer Textdatei lesen und in einer String-Variablen speichern?Aus einer Textdatei lesen und in einem String speichern

ist es möglich, den Dateinamen in einer Methode übergeben, und es würde den String zurückgeben, der den Text aus der Datei ist.

Welche Art von Dienstprogrammen muss ich importieren? Eine Liste von Aussagen wird großartig sein.

+0

welche Sprache ?? –

+0

Java, einfache Java-Sprache. – Mfali11

+0

warum Sie es nicht markieren? so lassen Sie Leute sehen –

Antwort

57

Dies sind die necersary Importe:

import java.io.BufferedReader; 
import java.io.FileReader; 
import java.io.IOException; 

Und dies ist eine Methode, die Sie aus einer Datei lesen, kann durch die Dateinamen als Parameter wie folgt übergeben: readFile("yourFile.txt");

String readFile(String fileName) throws IOException { 
    BufferedReader br = new BufferedReader(new FileReader(fileName)); 
    try { 
     StringBuilder sb = new StringBuilder(); 
     String line = br.readLine(); 

     while (line != null) { 
      sb.append(line); 
      sb.append("\n"); 
      line = br.readLine(); 
     } 
     return sb.toString(); 
    } finally { 
     br.close(); 
    } 
} 
+0

froh, ich könnte helfen :) –

+7

Sie könnten auch Apache FileUtils Bibliothek verwenden, um dies in einer Zeile zu tun ... Es gibt ** SO ** viele Fragen dazu ist es nicht einmal lustig. – jahroy

+2

Dieser Code hat mehrere Probleme: Woher wissen Sie, dass die Datei die Standardkodierung der Plattform ist? Woher weißt du, dass die Codierung ein einzelnes Byte pro Zeichen verwendet? Muss der FileReader nicht geschlossen werden, wenn beim Lesen eine Ausnahme ausgelöst wird? – meriton

-2

Wie können wir Daten aus einer Textdatei lesen und in einer String-Variablen speichern?

Err, lesen Sie Daten aus der Datei und speichern Sie sie in einer String-Variablen. Es ist nur Code. Bislang keine echte Frage.

Ist es möglich, den Dateinamen in einer Methode übergeben, und es würde die Zeichenfolge zurückgeben, die den Text aus der Datei ist.

Ja, es ist möglich. Es ist auch eine sehr schlechte Idee. Sie sollten mit der Datei jeweils ein Teil bearbeiten, zum Beispiel eine Zeile nach der anderen. Das Lesen der gesamten Datei in den Speicher, bevor Sie eine davon verarbeiten, erhöht die Latenz. verschwendet Speicher; und nimmt an, dass die gesamte Datei in den Speicher passt. Eines Tages wird es nicht. Du willst es nicht so machen.

+0

@ downvoter OK, was ist das? Es fügt keine Latenz hinzu? Verschwenden Sie keine Erinnerungen? geht nicht davon aus, dass die gesamte Datei in den Speicher passt? – EJP

Verwandte Themen