Entwickler-Ecke
Dateizugriff - endung auslesen
hibbert - Mi 27.11.02 11:28
Titel: endung auslesen
hallo,
ich möchte gerne die endung einer datei (z.b. txt) auslesen.
denn ich speicher den inhalt einer listbox über den svedialog ab. mein problem ist, dass ich zwar im filter *.txt angeben kann, aber wenn ich gerne eine datei überschreiben möchte, schreibt er eine neue datei ! :shock: :?
(z.b ich erstelle die datei test.txt, und habe daten in meinem programm geändert, jetzt möchte ich diese wieder in der test.txt abspeichern, aber eine neute datei wird erstellt --> test.txt.txt . vielleicht lieg es ja auch daran:
Quelltext
1:
| listbox1.Items.SaveToFile(savedialog1.FileName+'.txt'); |
gibt's da vielleicht auch noch einen anderen weg ?)
also, meine fragen: wie kann ich die endung auslesen?
und wie kann ich über den savedialog dateinen überschreiben?
mfg hibbert
Delete - Mi 27.11.02 11:40
Klar liegt es daran. :roll: Überleg doch mal, was du machst bzw. das Programm.. Du wählst im Speicher-Unter-Dialog "Test.txt" aus und was machst du mit dieser Zeile:
Quelltext
1:
| listbox1.Items.SaveToFile(savedialog1.FileName+'.txt'); |
Du hängst noch mal ".txt" hinten dran. :?
Einfach mal überlegen, was man eigentlich macht bzw. was da eigentlich passiert. :wink:
Klabautermann - Mi 27.11.02 11:51
Titel: Re: endung auslesen
Hallo,
hibbert hat folgendes geschrieben: |
Quelltext 1:
| listbox1.Items.SaveToFile(savedialog1.FileName+'.txt'); |
gibt's da vielleicht auch noch einen anderen weg ?)
also, meine fragen: wie kann ich die endung auslesen?
und wie kann ich über den savedialog dateinen überschreiben? |
Der Savedilog Speichert garnicht. Er hilft nur beim ermitteln des Dateinamens. Da du immer die Endung TXT anhängst, ist es klar das du dinge Text.txt.txt rauskriegst. Du solltest über ExtractFileExt überprüfen, ob der ausgewählte Dateiname eine Dateiendung besitzt.
Das könnte so aussehen:
Quelltext
1: 2: 3: 4:
| if (ExtractFileExt(savedialog1.FileName) = '') then listbox1.Items.SaveToFile(savedialog1.FileName+'.txt') else listbox1.Items.SaveToFile(savedialog1.FileName); |
Gruß
Klabautermann
Anonymous - Mi 27.11.02 13:20
Versuch das mal:
Quelltext
1:
| listbox1.Items.SaveToFile(ChangeFileExt(savedialog1.FileName, '.txt')); |
Egal ob schon was da ist oder noch nichts da ist, die Datei wird immer mit einem ".txt" enden.
hibbert - Mi 27.11.02 15:51
vielen dank !! genau das was ich gesucht habe !!
doch noch eine kleine frage zum schluss:
wie kann ich überprüfen, ob die datei abgespeichert wurde, d.h. ich möchte wissen, ob der user im savedialog auf speichern oder abbrechen geklickt hat. wie geht das ???
mfg hibbert
Delete - Mi 27.11.02 15:56
Liefert TRUE, wenn der Benutzer auf OK geklickt hat und FALSE, wenn er auf Abbrechen geklickt hat.
Quelltext
1: 2: 3: 4: 5:
| if SaveDialog1.Execute then begin Anweisung1; Anweisung2; end; |
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!