Hallo Java-Forum Community,
Ich arbeite gerade an einem Programm zum einlesen und bearbeiten von .txt Datein.
Die Funktionen sollen wie folgt sein :
Mein Code zum einlesen sieht wie folgt aus:
Nun zu meiner Frage, wie bearbeite Ich die eingelesene Array am besten,
bzw welche Funktion gibt es die ich benutzen kann ?
Kann mir jemand evt ein Fallbeispiel posten, oder einen Link zu einem guten Tutorial bereitstellen ?
Vielen Dank für eure Hilfe
MaximilianTM
Ich arbeite gerade an einem Programm zum einlesen und bearbeiten von .txt Datein.
Die Funktionen sollen wie folgt sein :
- txt Datei einlesen
- eingelesene Zeilen nach bestimmtem Zahlencode durchsuchen
- Zeile in der die Zahl gefunden wurde soll bearbeitet werden
- Aufbau einer Zeile: 0283101Demo123456789012345
- 028 = gesamtzahl Zeichen in Zeile / 3101 = Code der gefunden werden soll / Demo123456789012345 = Name der bearbeitet werden soll
- Der Name soll nur bearbeitet werden wenn er länger als 15 Zeichen ist, und dementsprechend gekürtzt werden.
- Namen auf 15 Zeichen kürzen
- Zeilenlänge auslesen und alten Wert am Anfang überschreiben
- Geänderte Zeile speichern
- Gesamtanzahl der Zeichen der .txt datei auslesen und an den Anfang des Dokuments schreiben
- Also müsste die gefundene Zeile nach dem bearbeiten wie folgt aussehen: 0223101Demo12345678901
Java:
package Pack;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JFileChooser;
import javax.swing.filechooser.FileNameExtensionFilter;
public class Reader {
public static void main(String[] args) throws IOException {
JFileChooser auswahl = new JFileChooser();
FileNameExtensionFilter filter = new FileNameExtensionFilter("TEXT FILES", "txt", "text");
auswahl.setFileFilter(filter);
auswahl.setCurrentDirectory(new java.io.File("."));
int returnVal = auswahl.showOpenDialog(null);
File datei = auswahl.getSelectedFile(); // Auswahl erfolgt
if (returnVal == JFileChooser.APPROVE_OPTION) {
System.out.println(datei.getAbsolutePath()); // Ausgabe des Pfads
// lesen
List<String> liste = new ArrayList<>();
try {
BufferedReader br = new BufferedReader(new FileReader(datei));
String zeile;
while ((zeile = br.readLine()) != null) {
liste.add(zeile);
}
br.close();
//Hier weiter arbeiten
} catch (IOException ex) {
ex.printStackTrace();
}
} else if (returnVal == JFileChooser.CANCEL_OPTION) {
System.out.println("Es wurde keine Datei ausgewählt");
} else if (returnVal == JFileChooser.ERROR_OPTION) {
System.out.println("ERROR / Keine Berechtigung ?");
}
}
}
Nun zu meiner Frage, wie bearbeite Ich die eingelesene Array am besten,
bzw welche Funktion gibt es die ich benutzen kann ?
Kann mir jemand evt ein Fallbeispiel posten, oder einen Link zu einem guten Tutorial bereitstellen ?
Vielen Dank für eure Hilfe
MaximilianTM