Zeile aus txt löschen

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Dusselchen14

Betreff: Zeile aus txt löschen

BeitragSo, Jan 25, 2009 1:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Also hier meine Frage:
wenn ich z.B eine TXT mit dem Inhalt
Zitat:

bla
bli
blo
blu

habe und ich möchte "blo" entfernen, also:
Zitat:

bla
bli
blu


wie mache ich das?

Ich habe die SUFU benutz und das gefunden: https://www.blitzforum.de/foru...+l%F6schen
Nur leider hat mir das nicht geholfen.
 

Roma3ht

BeitragSo, Jan 25, 2009 1:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Mit WriteFile ermittelst du die datei. Und zum bearbeiten schaust du dir mal in der onlinehilfe die anderen Write befehle an.
Hab ne frage: Hälst du uns für dumm ? wir wissen wie es aussieht wenn das blo weg ist, da musst da das nicht zeigen. Smile

Xeres

Moderator

BeitragSo, Jan 25, 2009 1:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Alle Zeilen in ein Array einlesen und alle bis auf die, die "blo" enthalten wieder in die Datei zurückschreiben.
instr, Readline, Writeline
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

skey-z

BeitragSo, Jan 25, 2009 1:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Roma3ht,
zum einen ist eine solche ausdrucksweise nicht nett und andererseits könnte es ja auch anders haben wollen und somit gibt er unter Umständen wichtige Informationen.

Zum Thema:

du musst erst mal die Datei auslesen, dazu brauchst du natürlich die "Read"-Befehle, mit deren Hilfe speicherst du die einzelnen Zeilen in ein Array(wenn die Anzahl der Zeilen bekannt ist, ansonsten musst du Types nehmen).
Danach schreibst du die Zeilen - mit Hilfe der "Write"-Befehle - aus dem Array oder den Types wieder in die (neue) datei, aber halt nur die, die du haben möchtest.
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter
 

Roma3ht

BeitragSo, Jan 25, 2009 12:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja ich weis, aber das versteht doch jeder wies aussieht wenn das blo weg ist.

Der Eisvogel

BeitragSo, Jan 25, 2009 14:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Nein es könnte auch so aussehen:
Zitat:

bla
bli

blu


Wink

MfG
Der Eisvogel
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D
Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB
Projekte: Window-Crasher
Ich liebe es mit der WinAPI zu spielen.
 

Roma3ht

BeitragSo, Jan 25, 2009 14:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Ist doch scheiß egal, im ist nur wichtig wie man ne zeile löscht. Wink

The_Nici

BeitragSo, Jan 25, 2009 14:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo Duesselchen!
Befehle, die du dir anschauen könntest:
Instr ReadLine ReadString Replace SeekFile
MfG und viel Erfolg!

Roma3ht: Wow, deine Erklährung war genious, die hat sicher geholfen.

BladeRunner

Moderator

BeitragSo, Jan 25, 2009 15:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Ist es das, Roma? Das weisst du in deiner Omnipotenz auch ganz sicher ?
Er hat eine ausführliche Beschreibung abgegeben, und das zurecht. Lieber so als wenn er uns eine kurze Frage 'hingerotzt' hätte, was leider immer wieder vorkommt.
Also bitte beleidige andere nicht weil sie korrekt sind und ausführlich ihre Problemstellung angeben.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

SpionAtom

BeitragSo, Jan 25, 2009 16:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Ein Array oder sonstigen Zwischenspeicher wie skey-z beschrieben hat, kann man sich auch sparen.

Man liest diese Datei Zeile für Zeile ein, und schreibt nach jedem Leseschritt den Zeilen-Inhalt in eine neue Datei. Liest man die Löschzeile ein, lässt man das Schreiben natürlich weg. Am Ende löscht man die Ursprungsdatei und benennt die neue um - voila.

Dennoch kann es sinnvoll sein mit Arrays zu arbeiten, wenn man die Zeilen öfters benötigt. Da muss man von Anwendung zu Anwendung schauen, was besser passt.
os: Windows 10 Home cpu: Intel Core i7 6700K 4.00Ghz gpu: NVIDIA GeForce GTX 1080
 

Wendigo

BeitragMo, Jan 26, 2009 14:22
Antworten mit Zitat
Benutzer-Profile anzeigen
Ob du es nun über ein Zwischenarray oder direktes Kopieren in eine neue Datei löst kommt darauf an wie groß deine Liste werden soll bzw. ob du eine Datenbank simulieren willst.
- Bei der Array-Variante wird säntlicher Inhalt im Arbeitspeicher abgelegt (Verarbeitung sollte schnell gehen, kostet aber RAM)
- Bei der Datei-Variante hast du durch Festplattenschreibaktionen wahrscheinlich einen geringen Geschwindigkeitsnachteil und der Speicherplatz auf der HDD verdoppelt sich während des Schreibens kurzzeitig.
Bei einer einfachen lokalen Highscoreliste (ö.Ä.) sollte es egal sein wofür du dich entscheidest.

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group