Einführung
Das Speichern von Daten in eine Datei ist nützlich für die permanente Speicherung. In Java gibt es vier Klassen, die zum Lesen von Dateien verwendet werden können: FileReader, Scanner, FileInputStream und BufferedReader. Diese Klassen gehören zum Paket java.io und werden zur Dateibearbeitung in Java verwendet.
Erstellen einer Beispiel-Datei
Beginnen Sie mit der Erstellung einer Beispiel-.txt-Datei zum Lesen. Sie können jede Texteditor verwenden, um diese Datei zu erstellen, und sie kann beliebige Daten enthalten, die Sie lesen möchten. Beispiel:
This is the sample data stored in a file
Rahul:10025
Sohan:10026
Madan:10027
Jack:10028
Benötigte Klassen importieren
Um die Datei zu lesen und ihren Inhalt in einen String zu konvertieren, müssen Sie die folgenden Klassen importieren:
import java.io.*;
Datei mit FileReader lesen
Verwenden Sie die FileReader-Klasse, um Daten aus der Datei zu lesen. Ein Objekt der FileReader-Klasse zeigt auf den Anfang einer Datei. Verwenden Sie einen Puffer der Größe 1, um jedes Zeichen der Datei zu lesen und es an eine String-Variable anzuhängen.
try {
// Schritt 1: Erstellen Sie ein neues FileReader-Objekt
FileReader fr = new FileReader("path/to/your/file.txt");
// Schritt 2: Erstellen Sie eine String-Variable, um den Inhalt der Datei zu speichern
String fileData = "";
// Schritt 3: Erstellen Sie eine ganzzahlige Variable, um jedes gelesene Zeichen zu speichern
int c;
// Schritt 4: Lesen Sie die Datei fort, bis das Ende der Datei erreicht ist
while ((c = fr.read())!= -1) {
// Schritt 5: Anhängen Sie jedes gelesene Zeichen an die fileData-Zeichenkette
fileData += (char) c;
}
// Schritt 6: Drucken Sie den Inhalt der Datei
System.out.println(fileData);
// Schritt 7: Schließen Sie den Dateireader
fr.close();
} catch (IOException e) {
e.printStackTrace();
}
Datei mit Scanner lesen
Verwenden Sie die Scanner-Klasse, um Daten aus einer Textdatei zu lesen. Sie müssen die Textdatei als Eingabequelle für den Scanner angeben, und dann den Scanner mit der \\Z-Methode begrenzen, um die gesamten Daten auf einmal zu lesen und in einen String umzuwandeln.
try {
File file = new File("path/to/file.txt");
Scanner scanner = new Scanner(file);
scanner.useDelimiter("\\Z");
String fileData = scanner.next();
System.out.println(fileData);
scanner.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
Datei mit FileInputStream lesen
Verwenden Sie die FileInputStream-Klasse, um Daten direkt aus der Datei in ein Byte-Array zu lesen. Erstellen Sie einen Puffer der gewünschten Größe (10 Bytes in unserem Beispiel), um die aus der Datei gelesenen Daten temporär zu speichern, und anhängen Sie sie an ein StringBuilder-Objekt. Schließlich verwenden wir die toString()-Methode, um den Inhalt des StringBuilder-Objekts in einen String umzuwandeln.
try {
File file = new File("path/to/file.txt");
FileInputStream fileInputStream = new FileInputStream(file);
byte[] buffer = new byte[10];
StringBuilder stringBuilder = new StringBuilder();
int length;
while ((length = fileInputStream.read(buffer))!= -1) {
stringBuilder.append(new String(buffer, 0, length));
}
String fileData = stringBuilder.toString();
System.out.println(fileData);
fileInputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
Datei mit BufferedReader lesen
Verwenden Sie die BufferedReader-Klasse, um Daten aus einer Datei auf einfache Weise zu lesen. Sie wird alle Daten auf einmal lesen, und Sie können dann jede Zeile mit der readLine()-Methode ausgeben.
try {
File file = new File("path/to/file.txt");
BufferedReader bufferedReader = new BufferedReader(new FileReader(file));
String line;
while ((line = bufferedReader.readLine())!= null) {
System.out.println(line);
}
bufferedReader.close();
} catch (IOException e) {
e.printStackTrace();
}
Zusammenfassung
In diesem Lab haben Sie gelernt, wie Sie in Java Daten aus einer Datei in einen String lesen. Es gibt mehrere Möglichkeiten, dies zu erreichen, darunter die Verwendung der Klassen FileReader, Scanner, FileInputStream und BufferedReader. Wir empfehlen Ihnen, diese Methoden selbst auszuprobieren, um zu verstehen, wie sie funktionieren und welche am besten für Ihren speziellen Anwendungsfall geeignet ist. Denken Sie daran, Ihren Code zu testen und den Pfad zu Ihrer Textdatei zu überprüfen.



