Bestimmte Daten aus textdatei löschen?

2 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Die Textdatei entspricht also dem typischen CSV-Format, nur dass das Separatorzeichen eben die Raute ist und kein Komma.

Lies die Datei zeilenweise aus. Je nachdem, mit welcher Programmiersprache du arbeitest, gibt es meist eine passende Funktionalität in deren Standardbibliothek.

Jede Zeile muss dabei anhand des Separators in einzelne Einträge aufgetrennt werden, sodass du zwischen den Spalten differenzieren kannst. Schau dafür nach einer split-Funktion oder nutze so lange eine Kombination aus indexOf (Suche nach dem ersten Vorkommen einer Raute) und substring, bis in der aktuellen Zeile keine Raute mehr gefunden werden kann.

Für die erneute Speicherung musst du an sich nur wissen, welche Spalte gelöscht werden soll. Vielleicht ist dir der Index bekannt oder nur der Spaltenname, über den du erst den passenden Index ermitteln musst (die erste Zeile in der Datei sollte in diesem Fall die Spaltennamen beinhalten).

Das Schreiben kann dann erneut zeilenweise erfolgen (schau in die API-Dokumentation der von dir gewählten Programmiersprache). Je Zeile setzt du alle Einträge (bis auf den mit dem zu löschenden Index) in einer Schleife wieder zu einen String zusammen. Hinter jeden Eintrag (bis auf den letzten) wird wieder die Raute gehängt.


Horst345387 
Beitragsersteller
 11.04.2022, 09:33

Vielen dank dir hat schon gut geholfen, aber gerade das auftrennen ist bei mir ein rätsel wie das genau klappt. Ich lese es zeilenweise in ein string ein aber wie schaffe ich es dann es eben aufzetrennen und dann jeweils in einem neuen feld eines arrays den teilstring abzulegen

0
regex9  11.04.2022, 12:27
@Horst345387

Je nachdem, mit welcher Programmiersprache du arbeitest, gibt es meist schon eine passende Funktionalität in deren Standardbibliothek, die all das in einem Rutsch durchführt. Schau in der offiziellen Dokumentation zum String-Typ nach so etwas wie split oder explode.

0

Ansatz: Suchen und Ersetzen ..!

Woher ich das weiß:Hobby – Programmierer, EDV, ... seit den 80er :)