usuwanie lini w pliku txt

0

Jak usunąć jakąś linię w pliku tekstowym znająć jej tekst?

0

wczytaj go do memo, a potem pod jakimś buttonem dodaj text:

var a :Integer;
begin
a:=memo1.lines.indexof['tu wpisz text'];
memo1.lines[a]:='';
end;

proste ;). Ten cod wymaga zapewno manipulacji z Twojej strony, ale to już pestka.
Jakby co to pisz na priv.
--Spin
(Delphi 5 Enterprise)

0

mozna tez zrobic cos w tym stylu:

const
L='delphi3'; //txt do usuniecia
var
Linie:TStringList;
Linia:String;
Plik:TextFile;
I:Integer;
begin
Linie:=TStringList.Create;
AssignFile(Plik, 'plik.txt');
Reset(Plik);
while not Eof(Plik) do
begin
Readln(Plik, Linia);
if (Linia&lt&gtL) then Linie.Add(Linia);
end;
CloseFile(Plik);
AssignFile(Plik, 'plik.txt');
Rewrite(Plik);
for I:=0 to Linie.Count-1 do
Writeln(Plik,Linie[I]);
CloseFile(Plik);
Linie.Free;

Usuwa z pliku linie 'delphi3'.
Nie jest to chyba najszybsze ale dziala. Chetnie poznal bym jakis lepszy sposob. Nalezy pamietac ze prog uwzglednia wielkosc liter (tzn. 'delphi3' usunie ale np. 'Delphi3' juz nie).
Opisik:
Prog przetwarza cly plik tekstowy (petla while) i zapisuje wszystkie jego linie do StringList oprocz tej do
usuniecia. Nastepnie zamyka otwarty plik, otwiera go ponownie ale przy pomocy procedury Rewrite
(tzn. ze usuwa jego poprzednia zawartosc) i zapisuje do niego zawartosc StringList.--Pozdrawiam
Ojciec (Delphi 5 Enterprise)

0

nie da rady tego zrobic inaczej jak przepisaniem ponownie zawartosci pliku bez tej lini

1 użytkowników online, w tym zalogowanych: 0, gości: 1