# Intelligente Methoden zum Einlesen von Textdateien



## sibirianman (17. Jan 2007)

Servus Gemeinde.

Ich habe folgendes Anliegen.

Ich habe 10 Logfiles zu je 10MB größe und in jeder Datei 8000 Zeilen. Für die Auswertung in meinem Tool müssen diese Dateien eingelesen werden. Das bedeutet also, dass ich 80000 Zeilen einlesen muss.
Die Methode mit dem Code unten ist mir bekannt.


```
try
			{
				BufferedReader br = new BufferedReader(new FileReader(sf));
				String zeile;
				
				/** 
				 * Liest die Datei Zeile-fuer-Zeile ein. 
				 */
				while((zeile = br.readLine()) != null)
				{
					cont.add(zeile);
				}
				br.close();				
			}
			catch(Exception e){}
```

Das Problem das ich habe ist, dass ich noch mehr Logfiles einlesen muss und das jedesmal Zeile für Zeile.

Sicherlich weiß jeder, dass es mehrere Sortier und Suchverfahren gibt die unterschiedlich von der Zeitkomplexität und Effektivität sind.

Als Beispiel für das Sortieren ist anzuführen der * Insertion Sort * mit einer Zeitkomplexität von O(n*n) und der * Heapsort * mit einer Zeitkomplexität von O(n*log(n)).

Wie sich jeder denken kann ist das nicht so lustig eine riesige Datenmenge Zeile für Zeile einzulesen.

Was ich wissen möchte ist:

*Gibt es Methoden, Verfahren oder Algorithmen wie man Dateien einliest ohne diese nur Zeile für Zeile durch zu rödeln.*

Ich brauche kein Code(würde aber auch nicht nein dazu sagen), sondern eine Aussage darüber ob es solche Verfahren gibt, wie sie heißen und die grundsätzliche Idee hinter dem Verfahren.


----------



## Wildcard (17. Jan 2007)

FileChannel#map ist für große Dateien am effizientesten


----------



## sibirianman (17. Jan 2007)

Wow das ging schnell.
Danke werde mich damit mal befassen.


----------

