Java File Scanner?
File file = new File("C:\\si.txt");
Scanner sc = new Scanner(file);
while (sc.hasNextLine())
System.out.println(sc.nextLine());
Meine Datei hat 5 Zeilen und ich habe diesen File Scanner. Mein Problem ist es aber dass ich alle Zeilen in einem String brauche.
Hier wird ja jede Zeile einzeln ausgegeben. Kann ich das irgendwie in eine Variable speichern?
3 Antworten
äh ja wenn du filescanner nutzen kannst solltest du auch wissen wie du das in ner variable speicherst
var test = "";
while ...
test+=sc.nextLine()+"\n";
du solltst echt vorher java lernen bevor du an filemanipulation rangehst.
x += 2; ist das selbe wie x = x +2;
x++ ist das selbe wie x = x+ 1
Neben den Antworten, die du schon hast:
Es gibt die Möglichkeit, dem Scanner einen anderen Separator für die next()-Funktion zu geben. Standardmäßig benutzt der Scanner da Whitespace (also Leerzeichen, Tabs, Zeilenumbrüche etc.). Du kannst als Separator aber auch das Dateiende setzen:
Scanner scanner = new Scanner(new File("C:\\temp\\test.txt"), "utf-8");
scanner.useDelimiter("\\Z");
String alles = scanner.next();
System.out.println(alles);
Alternativ kannst du die Datei auch mit einem FileInputStream einlesen. Der hat die Funktion "readAllBytes".
FileInputStream fis = new FileInputStream("C:\\temp\\test.txt");
String alles = new String(fis.readAllBytes(), "utf-8");
fis.close();
System.out.println(alles);
dann sammel ds doch in einer variablen , also jede zeile anhängen an die variabl ebzw sich selber (aus sicht der variable) da findet sich ja nun wirklich genug im netz , wie man quasi STRINGS addiert bzw anhängt . fachbegriff wäre concat strings
Danke, aber was macht dieses "+=" ?