TXT Dateien mal anders lesen

Status
Nicht offen für weitere Antworten.

fantrixx

Bekanntes Mitglied
Hi all,

also ich möchte gerne ganze viele Textdateien (.txt) einlesen. Aber nicht jede einzelnd sondern immer erst die erste Zeile von einer txt Datei. Also springt man in das este File und liest dort die erste Zeile uns seichert sie in ein Array[0][0] ab. Dann die zweite Datei und dort liesst man wieder die erste zeile und speichert das wieder in das Array[1]0].
So geht das weiter bis zum letzten File im Ordner. Danach wird die zweite Zeile von jedem txt File gelsen und in das Array abgespeichert.

Das Array sieht folgender maßen aus:

Array a1[Nummer der TXT Datei][Zeileninhalt];

Ich hoffe ihr könnt mir helfen... danke
 

nols

Mitglied
du könntest doch erst von einer datei alle zeilen lesen, oder wertest du die gelesenen Zeilen sofort aus und
verarbeitest die irgendwie? Wenn du die nur ins Array speicherst, dann sehe ich keinen Grund so zu verfahren.
 

Der Müde Joe

Top Contributor
denk einfach ein wenig um...

alle Zeilen einer Datei ganz einlesen...in ein Array
mit der zweiten dito...

dann kannste ja beliebige Arrays aus dem Datenkram machen
 

fantrixx

Bekanntes Mitglied
Also ich verarbeite die Dateien nicht sofort. Ich lese die erstmal ein.
Mein Ziel ist es danach die ersten Zeilen aus dem Array in eine zeile neben einander zu schreiben und dann die zweite Zeile mit den inhalt aus dem Array wo die Werte aus den zweiten Zeilen drine stehen.

Zb:

Code:
Datei1:

11111
11111

Datei2:

22222
22222

Datei 3:

33333
33333

So danach sollte es so aussehen:

Code:
11111 22222 33333
11111 22222 33333

ich hoffe ihr habt so in etwa verstanden was ich meine ?
 
S

SlaterB

Gast
du kannst das Array statt zeilenweise genausogut spaltenweise beschreiben,
das wäre unheimlich handlicher/ ressourcenschonender

natürlich steht es dir frei, x Dateien gleichzeitig zu öffnen oder gar die Dateien jedesmal neu zu öffnen und die aktuell benötigte Zeile zu suchen..

das wir das ganze verstanden haben ist eher nebensächlich,
solange du keine konkreten Fragen stellst?

kannst du mit Arrays umgehen?
kannst du Dateien einlesen?
na dann kombiniere diese deine Fähigkeiten zu einer neuen Evolutionsstufe ;)
bei konkreten Problemen und vorhanden Code melde dich hier
 

fantrixx

Bekanntes Mitglied
Also ich habe mich mal hingesetzt und das rausbekommen. Aber leider liest dieser Code nur jede Datei in eine Zeile ein und nicht so wie ich das wollte, und ich komm auch nicht auf den richtigen Weg ?

Code:
// javac Main.java 
// java Main

import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;

public class Main {

	private int anzahlDateien = 2;
	private String readPath = "C:\\Dokumente und Einstellungen\\timur\\Desktop\\TC\\TC\\A\\Messung0.txt";
	private String writePath;
	private String name;
	RandomAccessFile f1;
	private String[] gesamtText = new String[100];
	private String loadLine;
	
    public Main() {
    	//read();
    	//write();
    	
    	cutOut();
        writeOut();
    }
    
    //schneidet die Texte aus dem einzelnen TXT dateien raus und speichert es in einen String Array
    public void cutOut() {
    	for(int i = 0; i <= anzahlDateien; i++) {
    		System.out.println("Anfang der "+i+" Datei zu lesen");
    		
    		// Hier den Pfad der zu lesenen Dateien angeben
    		readPath = "C:\\Dokumente und Einstellungen\\timur\\Desktop\\TC\\test\\A\\Messung"+ i +".txt";
    		try {
    			f1 = new RandomAccessFile(readPath, "rw");
    			while((loadLine = f1.readLine())!= null) {
                	/*if(loadLine = "null") {
                		gesamtText[i] += loadLine +"\n";
                	}*/
                	System.out.println(loadLine);
                	gesamtText[i] += loadLine + " ";         
            	}
            	gesamtText[i] += loadLine +"\n"; 
    		} catch(Exception ex) { System.out.println(ex); };
    		
    		System.out.println("Fertig mit der "+i+" Datei LESEN");
    	}
    	//System.out.println(gesamtText[0]);		
    }
    
    //schreibt die einzelnen Texte aus dem String Array in eine Datei
    public void writeOut() {
    	
    	//hier den Pfad der zusammen hängenen schreiben Dateien angeben
    	writePath = "C:\\Dokumente und Einstellungen\\timur\\Desktop\\TC\\test\\a.txt";
    	try{
    		f1 = new RandomAccessFile(writePath, "rw");
    	}catch(Exception ex) { System.out.println(ex); }
    	
    	for(int i = 0; i <= anzahlDateien; i++) {
    		System.out.println("Anfang der "+i+" Datei zu schreiben");
    		try {
    			//f1.writeBytes("#");
    			f1.writeBytes(gesamtText[i]);
    			//f1.close();
    		} catch(Exception ex) { System.out.println(ex); }
    		System.out.println("Fertig mit der"+i+" Datei SCHREIBEN");
    	}
    }

    public void setWritePath(String path){
    	this.writePath = path;	
    }
    
    public String getWritePath() {
    	return writePath;
    }
    
    public String getName() {
    	return name;
    }
    
    public void setName(String name) {
    	this.name = name;
    }
    
    public static void main(String[] args) {
    	new Main();
    } 
}
 

Der Müde Joe

Top Contributor
darfst halt im read() nicht das ganze File in eine Zeile des Arrays schreiben....musste das i auch grösser machen

EDIT:
und jetzt is read wegEDITIERT
 
S

SlaterB

Gast
Code:
while((loadLine = f1.readLine())!= null) { 
        System.out.println(loadLine); 
        gesamtText[i] += loadLine + " ";          
} 
gesamtText[i] += loadLine +"\n";
hier liest du die Zeilen einzeln ein und fügst sie alle zu einem String zusammen,
(Tipp: String + String ist öfters angewendet sehr langsam,
verwende bei sowas lieber ein StringBuilder-Objekt und append)

wenn du den Text nicht in einer Zeile haben willst, dann tue das eben nicht ;)
lasse eine int-Variable mitlaufen und speichere jede Zeile z.B. in einem Array

gesamtText[j] = loadLine;
j++;
 

fantrixx

Bekanntes Mitglied
ok, wie kann ich den zeilenweise abspeichern ?
Es hat ja irgendwie mit der While bedingung zu tun oder?
Der liest ja solang bist das File zu ende ist. Ich will ja aber nur immer ein zeile einer Datei abspeichern.
 

Der Müde Joe

Top Contributor
Code:
int x = 0;
while(true){
System.out.println(x);
x++;
}

ca so...für Rest siehe SlaterB
 

fantrixx

Bekanntes Mitglied
habe meine Funktion soweit geändet , dass nur die erste Zeile ausgelsen wird:

Code:
    public void cutOut() {
    	int j = 0;
    	for(int i = 0; i <= anzahlDateien; i++) {
    		System.out.println("Anfang der "+i+" Datei zu lesen");	
    		// Hier den Pfad der zu lesenen Dateien angeben
    		readPath = "C:\\Dokumente und Einstellungen\\timur\\Desktop\\TC\\test\\A\\Messung"+ i +".txt";
    		try {
    			f1 = new RandomAccessFile(readPath, "rw");
    			loadLine = f1.readLine();
                gesamtText[i][j]+= loadLine + "#";
                System.out.println(gesamtText[i][j]);
                gesamtText[i][j]+= "\n"; 
                j++;   	   
    		} catch(Exception ex) { System.out.println(ex); };
    		System.out.println("Fertig mit der "+i+" Datei LESEN");
    	}		
    }

ist auch logisch weil ich ja immer sage das man mit f1.readline(); immer die erste zeile lesen soll. So nun würde ich aber eine Zeile weiter springen dun die nächste Zeile lesen ?
 

Der Müde Joe

Top Contributor
Code:
int zeile = 0;
while((loadLine = f1.readLine())!= null) {
        System.out.println(loadLine);
        gesamtText[i][zeile] = loadLine;      
zeile++;   
}

EDIT:
ist halt ein wenig problematisch, da du nicht weisst
wieviele Zeilen da kommen und ein Array nicht
sehr dynamisch ist (initiale Grösse)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
H .java Dateien in Eclipse einbinden und ausführen Java Basics - Anfänger-Themen 1
I Dateien aus dem Resource Folder laden Java Basics - Anfänger-Themen 2
A Thread XML-Dateien zusammenfügen Java Basics - Anfänger-Themen 11
Buroto Threads Verschiedene .txt Dateien Auf Listen und Verbinden Java Basics - Anfänger-Themen 3
J Dateien lesen und schreiben Java Basics - Anfänger-Themen 5
B Jar Dateien ohne IDE verwenden? Java Basics - Anfänger-Themen 1
A Optimierung eines Programms: Mergen der Dateien Java Basics - Anfänger-Themen 23
A Zwei XML-Dateien Mergen Java Basics - Anfänger-Themen 14
A Input/Output Mehrere Csv-Dateien einlesen Java Basics - Anfänger-Themen 2
LetsSebi Dateien werden nicht in Zip gespeichert Java Basics - Anfänger-Themen 1
J Alle .java Dateien von einem Verzeichnis in eine Zip speichern Java Basics - Anfänger-Themen 2
J Alle Dateien aus einem Verzeichnis laden Java Basics - Anfänger-Themen 10
MiMa log4j als separate Dateien in Schleife? Java Basics - Anfänger-Themen 6
M Scannen von *.txt - Dateien; wo sind der oder die Fehler? Java Basics - Anfänger-Themen 4
A Input/Output Dateien einlesen und ausgeben Java Basics - Anfänger-Themen 7
S Lese- / Schreibfähigkeit von Dateien sicherstellen Java Basics - Anfänger-Themen 1
C "HelloWorld" - Dateien erstellt, aber ist es eine class-Datei? Java Basics - Anfänger-Themen 2
J Java findet plötzlich die Dateien im Projekt nicht mehr. Java Basics - Anfänger-Themen 12
J Dateien in Verzeichnissen rekursiv auflisten wirft Exception Java Basics - Anfänger-Themen 4
L Classpath Alle Dateien im Classpath finden Java Basics - Anfänger-Themen 4
MiMa Formate für Dateien und Pfade? Java Basics - Anfänger-Themen 1
O Datei in mehrere kleine Dateien umwandeln Java Basics - Anfänger-Themen 47
L Richtige Reihenfolge der Dateien Java Basics - Anfänger-Themen 5
CptK Datentypen Text Dateien einlesen Java Basics - Anfänger-Themen 3
J Logging erzeugt zwei dateien.... Java Basics - Anfänger-Themen 7
A Dateien Verschieben Java Basics - Anfänger-Themen 1
M Mehre Dateien parallel kopieren mit Multithreading Java Basics - Anfänger-Themen 8
C Methoden Dateien im Ordner anzeigen Java Basics - Anfänger-Themen 12
J Java-Dateien lassen sich nicht editieren Java Basics - Anfänger-Themen 46
E FTP Dateien hochladen Java Basics - Anfänger-Themen 3
J Probleme beim schreiben von Dateien Java Basics - Anfänger-Themen 5
Korvinus Vergleichen von 2 csv-Dateien Java Basics - Anfänger-Themen 2
I Texte mit Absätzen in Dateien speichern und auslesen Java Basics - Anfänger-Themen 1
M "substring()" mit Dateien und Pfadangaben Java Basics - Anfänger-Themen 5
Voreck Jar Dateien Standart programm ändern Java Basics - Anfänger-Themen 12
K Dateien aus Source-Package verwenden Java Basics - Anfänger-Themen 10
B Dateien aus dem "resource" - Folder kopieren in Verzeichnis Java Basics - Anfänger-Themen 9
B Kopieren von Dateien mit Adminberechtigungen Java Basics - Anfänger-Themen 14
F Threads ftp4j, viele Dateien upload Java Basics - Anfänger-Themen 5
P Einen Ordner mit Dateien hochladen [FTP] Java Basics - Anfänger-Themen 2
X Dateien direkt hintereinander schreiben, Dateiname Java Basics - Anfänger-Themen 25
G Messwerte in 2 Dateien schreiben Java Basics - Anfänger-Themen 20
C Verarbeitung von sehr großen Dateien Java Basics - Anfänger-Themen 52
F Input/Output Dateien lesen/schreiben Java Basics - Anfänger-Themen 1
V Mehrere Dateien aus JFileChooser in eine ArrayList speichern Java Basics - Anfänger-Themen 2
K Dateien lesen | IndexOutOfBoundsException Java Basics - Anfänger-Themen 2
T Classpath Problem mit dem auslesen von Text-Dateien (Pfad) Java Basics - Anfänger-Themen 3
A attach source: Zusammenhang zwischen JAR und .class/.java Dateien? Java Basics - Anfänger-Themen 2
T .jar Datei als Ordner benutzen/ Dateien aus .jar Datei auslesen Java Basics - Anfänger-Themen 3
C Klassen Class Files nachladen (mehrer .jar Dateien) Java Basics - Anfänger-Themen 2
Bluedaishi for schleife um Dateien wieder zusammen zu fügen Java Basics - Anfänger-Themen 11
S Resourcen-Dateien im Jar-File verfügbar machen (Intellij 14) Java Basics - Anfänger-Themen 14
J Dateien für anderen User "mitgeben" Java Basics - Anfänger-Themen 1
S Dateien mit Java verschieben Java Basics - Anfänger-Themen 6
A Heap Space Error bei rekursiver Suche in Dateien trotz nur einer Zeile im Speicher Java Basics - Anfänger-Themen 26
E Dateien werden nicht gelöscht Java Basics - Anfänger-Themen 10
S Class Dateien decompilieren Java Basics - Anfänger-Themen 4
T Fehler beim Schreiben in Dateien! Java Basics - Anfänger-Themen 4
Bluedaishi Dateien Lassen sich unter windows nicht löschen Java Basics - Anfänger-Themen 8
Z Mehrere XML-Dateien zu einer zusammenfügen Java Basics - Anfänger-Themen 3
K JAR Dateien einbinden - funkt nicht wie es sollte... Java Basics - Anfänger-Themen 22
M Threads nio Dateien kopieren, Threads und Gui Java Basics - Anfänger-Themen 0
J *.sql Dateien in Java Java Basics - Anfänger-Themen 1
P Dateien im Ordner auflisten. Java Basics - Anfänger-Themen 3
P Compiler-Fehler .java Dateien kompilieren und .class Dateien zur .jar Java Basics - Anfänger-Themen 4
S Daten aus anderen Dateien in neue Datei einlesen Java Basics - Anfänger-Themen 3
M Input/Output Arbeiten mit extrem vielen Dateien Java Basics - Anfänger-Themen 8
R File chooser Dateien in frame anzeigen lassen Java Basics - Anfänger-Themen 5
N tar-Dateien Java Basics - Anfänger-Themen 6
B Methoden Dateien konvertieren Java Basics - Anfänger-Themen 3
L Dateien speichern/auslesen Java Basics - Anfänger-Themen 5
M Input/Output Probleme beim Parsen von CSV und TXT Dateien Java Basics - Anfänger-Themen 7
P Wiedereinstieg und kann keine Dateien mehr öffnen... Java Basics - Anfänger-Themen 13
F Classpath Dateien einbinden und Classpath durchsuchen Java Basics - Anfänger-Themen 2
N Java Programm zum Suchen und Ersetzen von Text Dateien Java Basics - Anfänger-Themen 10
S Dateien/LinkedList/StringBuffer - SOrtierung klappt nicht so ganz Java Basics - Anfänger-Themen 2
U Best Practice Nicht-permanente Links auf Dateien Java Basics - Anfänger-Themen 5
B In welchem (Default) Pfad erstellt Java Dateien? Java Basics - Anfänger-Themen 4
I Methoden zum lesen und speichern von Dateien Java Basics - Anfänger-Themen 2
B .ut dateien ignorieren und fortsetzen Java Basics - Anfänger-Themen 9
R Ressourcen in JAR-Dateien Java Basics - Anfänger-Themen 2
J jar Dateien global erreichbar machen Java Basics - Anfänger-Themen 3
L Zusammenführen mehrerer .txt Dateien Java Basics - Anfänger-Themen 4
M Dateien erstellen/ bearbeiten/ lesen Java Basics - Anfänger-Themen 9
S Dateien in RAM kopieren und ausführen? Java Basics - Anfänger-Themen 4
O Java Dateien verschlüsseln? Java Basics - Anfänger-Themen 22
K Unterschied zwischen Jar, war und ear Dateien Java Basics - Anfänger-Themen 3
B Dateien kopieren, entpacken, XML auslesen! Java Basics - Anfänger-Themen 7
B Dateien Verschieben! Java Basics - Anfänger-Themen 8
B ältere Dateien verschieben Java Basics - Anfänger-Themen 3
G Erste Schritte Nach bestimmten Dateien suchen und dann in die Registry schreiben. Java Basics - Anfänger-Themen 6
J Laden von Dateien Java Basics - Anfänger-Themen 19
I Xml dateien zusammenfügen Java Basics - Anfänger-Themen 12
I Dateien in Ordner und Unterordner durchsuchen Java Basics - Anfänger-Themen 18
J Markierte Einträge (Dateien) in JList sollen in einen anderen Ordner verschoben werden. Java Basics - Anfänger-Themen 12
N Input/Output Große Dateien schnell Speichern/auslesen Java Basics - Anfänger-Themen 16
L Klassen Ich kann keine .jar Dateien mehr öffnen Java Basics - Anfänger-Themen 4
T Java Projekt als runnable jar file exportieren inklusive csv Dateien Java Basics - Anfänger-Themen 4
B Ordner in jar dateien einfügen Java Basics - Anfänger-Themen 4
FrozeTee .java Dateien unter Windows 7 werden nicht angezeigt Java Basics - Anfänger-Themen 7

Ähnliche Java Themen


Oben