Ich bin an einer einfachen Zeilenverarbeitung interessiert.
Sehen Sie sich die Klasse Scanner an.
Es wurde in Java 5 hinzugefügt, um das Lesen von Strings und Dateien wesentlich einfacher zu machen als die alten FileReaders und FileInputStream Ketten (nicht mehr new BufferedReader(new FileReader())
, nur um zu einer readLine
-Methode zu gelangen).
In der Klasse Scanner können Sie die Methode nextLine
verwenden, um jeweils eine Zeile zu lesen, aber es gibt auch viele util-Methoden zum Suchen von Primitiven und regulären Ausdrücken in der Datei.
Wenn Sie bereit sind, zu verwenden Bibliotheken von Drittanbietern und dann Hilfsklassen wie Files
von Guava oder FileUtils
von Apache Commons IO machen das Lesen von Dateien sehr einfach.
Beispiele unten (wo File file = new File("path/to/file.txt")
) des Lesens aller Zeilen einer Textdatei in eine Liste und Lesen der gesamten Datei in einen String.
Guave:
%Vor%Apache Commons IO:
%Vor%Meine Empfehlung (ab 2013) ist Guava , eine moderne, saubere, aktiv gepflegte Bibliothek. Es ist in der Regel von höherer Qualität als Apache Commons Zeug.
Natürlich würde das Hinzufügen von Guava nur für diesen Zweck keinen Sinn ergeben, da es eine relativ große Bibliothek ist. Auf der anderen Seite würde nicht , die Guava heute in einem Java-Projekt verwendet, IMO dumm sein. :-)
Zugegeben, JDK bietet jetzt einige adäquate Werkzeuge ( Scanner ) für diesen speziellen Zweck; Die Verwendung einer 3rd-Party-Bibliothek zum Lesen von Dateien war eher gerechtfertigt, wenn so etwas wie war die Alternative.
Sie könnten Apache's FileUtils ausprobieren. Methoden wie
%Vor%