Die Lese- und Schreibvorgänge von Java sind die einzige Möglichkeit, die Java-Entwicklung zu erlernen. Schauen wir uns an, wie man Dateien in Java liest.
1. Verwenden Sie BufferedReader, um Dateien zu lesen.
BufferedReader ist eine Wrapper-Klasse, die für Leseeffizienz entwickelt wurde. Sie kann Zeichenströme umschließen. Text kann aus einem Zeicheneingabestream gelesen werden, wobei einzelne Zeichen gepuffert werden, um Zeichen, Arrays und Zeilen effizient zu lesen.
static long testBuffered(String fileName) throws IOException{ Long startTime = System.currentTimeMillis(); BufferedReader reader = new BufferedReader(new FileReader(fileName)); char[] buffer=new char[8*1024]; long sum = 0; while((count=reader.read(buffer))!=-1) { sum += count; } reader.close(); Long endTime = System.currentTimeMillis(); System.out.println("Total time of BufferedReader is "+ (endTime - startTime) + " milliseconds, Total byte is " + sum); return endTime - startTime; }
2. Verwenden Sie die RandomAccessFile-Klasse, um Dateien zu lesen.
RandomAccessFile ist ein von Java bereitgestellter Zugriff auf Dateiinhalte Direkter Zugriff auf Dateien und Zugriff auf jeden Speicherort der Datei.
static long testRandomAccess(String fileName) throws IOException{ Long startTime = System.currentTimeMillis(); RandomAccessFile reader = new RandomAccessFile(fileName,"r"); int count; byte[] buffer=new byte[8*1024];//缓冲区 long sum = 0; while((count=reader.read(buffer))!=-1){ sum += count; } reader.close(); Long endTime = System.currentTimeMillis(); System.out.println("Total time of RandomAccess is "+ (endTime - startTime) + " milliseconds, Total byte is " + sum); return endTime - startTime; }
3. Verwenden Sie die FileInputStream-Methode, um Dateien zu lesen.
Diese Methode ist das gleiche wie der Name Stream und dann ein Zeichen Lesen eines Zeichens. Es wird durch Aufrufen der Lesefunktion von InputStream implementiert. Der Code lautet wie folgt:
public int read(byte b[], int off, int len) throws IOException { int c = read(); if (c == -1) { return -1; } b[off] = (byte)c; int i = 1; try { for (; i < len ; i++) { c = read(); if (c == -1) { break; } b[off + i] = (byte)c; } } catch (IOException ee) { } return i; }
Stream ist ein abstraktes Konzept. Wenn ein Java-Programm Daten aus einer Datenquelle lesen muss, öffnet es einen Stream zur Datenquelle. Die Datenquelle kann eine Datei, ein Speicher oder ein Netzwerk usw. sein. Wenn das Programm Daten an ein Ziel ausgeben muss, öffnet es ebenfalls einen Stream. Das Datenziel kann auch eine Datei, ein Speicher oder ein Netzwerk sein. Streams werden erstellt, um die Eingabe und Ausgabe von Daten bequemer zu handhaben.
Für weitere Java-Kenntnisse beachten Sie bitte das Java-Grundlagen-Tutorial.
Das obige ist der detaillierte Inhalt vonSo lesen Sie Dateien in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!