Delphi-PRAXiS
Seite 4 von 4   « Erste     234   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   .txt lesen/schreiben (https://www.delphipraxis.net/110113-txt-lesen-schreiben.html)

Nuclear-Ping 13. Mär 2008 10:59

Re: .txt lesen/schreiben
 
Zitat:

Zitat von shade
@Nuklear Ping
Was bringt mir ein Tutorial, hab den Code jetzt einfach mal fast 1:1 abkopiert und trotzdem
Funktioniert es nicht. Da bringt auch ein Tut nichts.
Kann mir wenigstens einer mal die Fehler erklären.

Code den man 1:1 abkopiert funktioniert in den meisten Fällen nicht, da die Leute die sowas posten in der Regel von einem fundiertem Grundlagenwissen ausgehen, sodass man fehlende / unpassende Stellen selber ergänzen / ersetzen kann. Und das wird durch Tutorials, Büchern, Beispielen, Hilfen, FAQ, Erfahrung, etc. vermittelt.

Hättest du das hinter dir, würdest du deine Fehler selbst sehen.

shader 13. Mär 2008 11:17

Re: .txt lesen/schreiben
 
Ne hätte den Fehler glaube niemals gefunden. Da hätte ich
1000 Tutorials machen können. Weißte auch warum,
weil mir die Praxis noch fehlt. Als ich den Code von Klaus gesehen
hab, wusste ich sofort wo mein Fehler liegt. Nämlich darin, das
ich die Datei nie vor der Methode geladen/geöffnet habe. Und deswegen
auch immer die Zugriffsverletzung kam. Weil ja nichts drin stand
bzw er nicht wusste welche Datei.

Nichts das ich was gegen Tutorials habe aber durch die Praxis
lernt man es erst richtig. Ist jedenfalls meine Meinung.
Sieht man ja heut auch oft im alltäglichen Leben,
wer Praxiserfahrung hat liegt eigentlich meist im Vorteil
gegenüber einem der nur Theorie kann.

shader 13. Mär 2008 11:28

Re: .txt lesen/schreiben
 
Eine Frage bzw Problem habe ich jetzt noch, unzwar
funktioniert das Löschen eines Datensatzes noch nicht.
Erkennt ihr vielleicht den Fehler;

Delphi-Quellcode:
begin
  loeschen := TStringList.Create;
  loeschen.LoadFromFile('notiz.txt');
  zeilen := loeschen.Count;
  loeschen.Delete(i);
  i := i + 1;
  loeschen.Free;
  if i = zeilen then
     ShowMessage('keine Notizen mehr vorhanden.');
end;

Nuclear-Ping 13. Mär 2008 11:30

Re: .txt lesen/schreiben
 
Hättest du Grundlagenwissen, hättest du von allein gewußt, dass eine frisch erzeugte Standard-Klasse keinen Inhalt hat. Woher auch? Soll Delphi raten was du vor hast? Das meiste was dein Programm machen - und auch nicht machen - soll, mußt du halt programmieren.

Ausserdem geht es darum, dass die Probleme und die Fragen die du hast, schon mindestens 100.000 andere Programmieranfänger auf der Erde hatten - und auch mindestens 50 Leute hier. Daher findet man das alles zu 100000% im Internet.

Und für mich hat sammeln von Praxiserfahrung nichts damit zu tun, sich in einem Forum seine Anfänger- und Syntaxfehler korrigieren zu lassen.

[edit]
Vergiss es ...
[/edit]

shader 13. Mär 2008 11:35

Re: .txt lesen/schreiben
 
Wenn es schon 50 gehabt hätte, hätte ich dazu auch was bei der SuFu finden
müssen. Aber war nicht der Fall. Is ja nun auch egal, jede hat eben seine
Meinung dazu.

Kannst du mir dann vielleicht sagen, wie ich überprüfen kann ob
er überhaupt versucht zu löschen!?

Nuclear-Ping 13. Mär 2008 11:37

Re: .txt lesen/schreiben
 
Zitat:

Zitat von shader
Wenn es schon 50 gehabt hätte, hätte ich dazu auch was bei der SuFu finden
müssen. Aber war nicht der Fall. Is ja nun auch egal, jede hat eben seine
Meinung dazu.

Böses Eigentor?

[dp]stringlist eintrag löschen[/dp]

DeddyH 13. Mär 2008 11:37

Re: .txt lesen/schreiben
 
Zitat:

Delphi-Quellcode:
begin
  loeschen := TStringList.Create;
  loeschen.LoadFromFile('notiz.txt');
  zeilen := loeschen.Count;
  loeschen.Delete(i); //welchen Wert soll i denn haben?
  i := i + 1;
  loeschen.Free; //wozu erst löschen, wenn dann die Liste einfach wieder zerstört wird?
  if i = zeilen then
     ShowMessage('keine Notizen mehr vorhanden.');
end;


Nuclear-Ping 13. Mär 2008 11:43

Re: .txt lesen/schreiben
 
Eine StringList hat auch NICHTS mit der Datei zu tun, die man lädt. Das heisst, wenn du aus der Liste eine Zeile löschst, bleibt die Datei davon unberührt. Du müßtest die Liste per .SaveToFile wieder zurückschreiben, falls du das erreichen willst.

Vielleicht war da ja der Stöpsel ...? ;)

shader 13. Mär 2008 11:52

Re: .txt lesen/schreiben
 
Na StringList hab ich ja auch nicht gesucht, da wusste ich noch nicht
das ich das damit mache. Aber trotzdem Danke, dadurch hab ich meinen Fehler
gefunden. Muss nach jedem Löschen meine Liste Speichern. Und siehe
da es funktioniert. Also das wars dann.
Danke an alle die geholfen haben

xZise 13. Mär 2008 16:09

Re: .txt lesen/schreiben
 
Hi shader,
Zitat:

Zitat von shader
Delphi-Quellcode:
procedure TForm1.btn_lesenClick(Sender: TObject);
var lesen: TStringList;
begin
  lesen := TStringList.Create;
  lbl_nachr.Caption := nachricht;
  lesen.Free;
end;
Delphi-Quellcode:
procedure TForm1.btn_lesenClick(Sender: TObject);
var lesen: TStringList;
begin
  lesen := TStringList.Create;
  lbl_nachr.Caption := lesen[0];
  lesen.Free;
end;

Auch wenn du inzwischen weißt, was du machen musstest, guck dir mal beides an.
Programme bzw. Programmiersprachen bzw. Computer tun nur eine Sache.
Sie bekommen ein Input (den Code), wandeln den um (komplieren) und geben ihn aus (Output/die .exe).
Wenn der Input fehlt, wird nichts verarbeitet und demnach auch nichts ausgegeben.

Zitat:

Zitat von shader
Zitat:

Löschen einer Zeile ( var SList: TStingList; // Creat und Free nicht vergessen )
SList.Delete(0); //löscht die erste Zeile
So hab ich es auf einer Seite gefunden.

Dann benutzte es doch auch, und versuche nicht mit den [ ] rumzuhantieren.
Wenn du "()" verwendest, sind dass Übergabeparamter einer Prozedur oder Funktion.
Wenn du "[]" meinst du ein Array oder ein Set of.

Übrigens, dass du die Datei laden musst, wurde in mehreren Beiträgen schon vor meinen geschrieben. Und auch das Speichern war dort zu finden. Sogar das Laden von Dateien die nicht existieren.

Also benutzte zuerst die Suchenfunktion: Hier im Forum suchenDatei laden
Stelle dann deine Frage präzise, und Antworte präzise ;)
Ansonsten fehlt wieder Input! Und damit auch Output.

MfG
xZise


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:49 Uhr.
Seite 4 von 4   « Erste     234   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz