AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Bestimmte Zeile via TStringList löschen

Ein Thema von Flopa · begonnen am 5. Jan 2012 · letzter Beitrag vom 5. Jan 2012
Antwort Antwort
Seite 1 von 2  1 2   
Flopa

Registriert seit: 5. Jan 2012
9 Beiträge
 
#1

Bestimmte Zeile via TStringList löschen

  Alt 5. Jan 2012, 20:32
Hallo Leute,
ich bin ein kompletter Anfänger und wollte mir ein Programm zum Abfragen von Vokabeln abfragen.

Das klappt alles auch schon soweit, nur möchte ich, dass eine Vokabel aus einer .txt-Datei gelöscht wird, wenn sie richtig beantwortet wurde.

Ich sitze heute schon den ganzen Tag dran und habe gegooglet, aber mit List.Delete(1) klappt das irgendwie nicht.

Delphi-Quellcode:

List:=TStringList.create;
List.LoadFromFile('C:\Users\Florian\Desktop\Delphidateien\Vokabeln-Auslesen\unsicherevoklat.txt');
   for i3:=0 to num-1 do begin
       ReadLn(td3,s2);
       ReadLn(td4,s3);

       abfrage2:=inputbox('Wiederholung',s2,'');

       if (uppercase(abfrage2)=uppercase(s3)) then begin
       showmessage('Richtig!');
        list.Delete(i3);
       end;
Jedoch bleibt die Zeile immer erhalten und wird einfach nicht gelöscht.
Danke schon mal für eure Hilfe.
Liebe Grüße,

Flo

Geändert von Flopa ( 5. Jan 2012 um 20:36 Uhr)
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#2

AW: Bestimmte Zeile via TStringList löschen

  Alt 5. Jan 2012, 21:16
Schon mal überlegt, wo die Stelle zum Abspeichern ist ?
Gruß
Hansa
  Mit Zitat antworten Zitat
Flopa

Registriert seit: 5. Jan 2012
9 Beiträge
 
#3

AW: Bestimmte Zeile via TStringList löschen

  Alt 5. Jan 2012, 21:20
Bei folgendem Quelltext kommt folgende Meldung:

Delphi-Quellcode:
List:=TStringList.create;
List.LoadFromFile('C:\Users\Florian\Desktop\Delphidateien\Vokabeln-Auslesen\unsicherevoklat.txt');
   for i3:=0 to num-1 do begin
       ReadLn(td3,s2);
       ReadLn(td4,s3);

       abfrage2:=inputbox('Wiederholung',s2,'');

       if (uppercase(abfrage2)=uppercase(s3)) then begin
       showmessage('Richtig!');
        list.Delete(i3);
        list.savetofile('C:\Users\Florian\Desktop\Delphidateien\Vokabeln-Auslesen\unsicherevoklat.txt');
       end;
Jedoch ist die Datei nicht mehr geöffnet.
Miniaturansicht angehängter Grafiken
untitled.png  

Geändert von Flopa ( 5. Jan 2012 um 21:23 Uhr)
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#4

AW: Bestimmte Zeile via TStringList löschen

  Alt 5. Jan 2012, 21:26
Aha, dank Nachfrage kommt die betreffende fehlerhafte Zeile. Wird wohl wieder endlos-Thread. Welches Programm könnte denn wohl die Datei im Zgriff haben ? Delphi selber vielleicht ?
Gruß
Hansa
  Mit Zitat antworten Zitat
Flopa

Registriert seit: 5. Jan 2012
9 Beiträge
 
#5

AW: Bestimmte Zeile via TStringList löschen

  Alt 5. Jan 2012, 21:27
Und wie löse ich das Problem dann?

Mit list.free?

Grüße,

Flo
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie
(Moderator)

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

AW: Bestimmte Zeile via TStringList löschen

  Alt 5. Jan 2012, 21:31
Also wenn man ein Objekt nicht mehr braucht, dann sollte man es schon freigeben.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Flopa

Registriert seit: 5. Jan 2012
9 Beiträge
 
#7

AW: Bestimmte Zeile via TStringList löschen

  Alt 5. Jan 2012, 21:33
Delphi-Quellcode:
List:=TStringList.create;
List.LoadFromFile('C:\Users\Florian\Desktop\Delphidateien\Vokabeln-Auslesen\unsicherevoklat.txt');
   for i3:=0 to num-1 do begin
       ReadLn(td3,s2);
       ReadLn(td4,s3);

       abfrage2:=inputbox('Wiederholung',s2,'');

       if (uppercase(abfrage2)=uppercase(s3)) then begin
       showmessage('Richtig!');
        list.Delete(i3);
        list.free;
        list.savetofile('C:\Users\Florian\Desktop\Delphidateien\Vokabeln-Auslesen\unsicherevoklat.txt');
       end;
Liefert folgende Fehlermeldung:
Miniaturansicht angehängter Grafiken
untitled2.png  
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie
(Moderator)

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#8

AW: Bestimmte Zeile via TStringList löschen

  Alt 5. Jan 2012, 21:35
Bitte nur mal für zwei Sekunden nachdenken. Du gibst ein Objekt frei und dann willst du es noch nutzen. Kann das funktionieren?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Flopa

Registriert seit: 5. Jan 2012
9 Beiträge
 
#9

AW: Bestimmte Zeile via TStringList löschen

  Alt 5. Jan 2012, 21:38
Klingt logisch
Aber wie soll ich etwas in die Textdatei speichern, ohne es vorher freigegeben zu haben? Dann kommt folgende Fehlermeldung
Miniaturansicht angehängter Grafiken
untitled3.png  
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie
(Moderator)

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#10

AW: Bestimmte Zeile via TStringList löschen

  Alt 5. Jan 2012, 21:41
Was ist denn td3 und td4? Zeig doch mal den ganzen Code den du da hast. Mit dem kleinen Ausschnitt kann man nicht viel anfangen.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf