Autor |
Beitrag |
ppl
      
Beiträge: 53
|
Verfasst: Fr 22.08.08 18:18
Guten Abend,
ich finde einfach kein Codeschnipsel wie ich wenn ich auf dem ok button drücke,
ein zielort zum speichern der txtfile nehmen kann, momentan habe ich das so gelößt:
Delphi-Quelltext 1: 2: 3: 4:
| FileName: String; begin
FileName := 'C:\test.txt'; |
Zuletzt bearbeitet von ppl am So 24.08.08 15:39, insgesamt 1-mal bearbeitet
|
|
Blackheart666
      
Beiträge: 2195
XP
D3Prof, D6Pers.
|
Verfasst: Fr 22.08.08 18:24
OpenDialog, SaveDialog
_________________ Blackheart666
Der Irrsinn ist bei Einzelnen etwas Seltenes, - aber bei Gruppen, Parteien, Völkern, Zeiten die Regel. (Friedrich Nietzsche)
|
|
Jerk
      
Beiträge: 251
Vista Ultimate, Ubuntu
Turbo Delphi 2006
|
Verfasst: Fr 22.08.08 18:25
Evtl kann dir ja die Komponente TsaveDialog weiterhelfen, ansonsten musste halt nen Editfeld oder ne Shellist benutzen um den Speicherort vom benutzen eingeben lassen zu können.
|
|
ppl 
      
Beiträge: 53
|
Verfasst: Fr 22.08.08 19:08
das mit dem tedit feld wüsste ich wie es geht,
aber ich raff das mit opendialog und savedialog nicht,
tsavedialog hmm weiß auch net mehr,
kann mir einer villt detailierter helfen?
|
|
Xentar
      
Beiträge: 2077
Erhaltene Danke: 2
Win XP
Delphi 5 Ent., Delphi 2007 Prof
|
Verfasst: Fr 22.08.08 19:43
Hast du dir schonmal die Hilfe davon angesehen?
So umfangreich sind die nun nicht, als dass man das nicht durchlesen könnte...
_________________ PROGRAMMER: A device for converting coffee into software.
|
|
ppl 
      
Beiträge: 53
|
Verfasst: So 24.08.08 15:31
Funktiniert immer noch nicht so ganz,
meine txt file wird nicht mehr abgespeichert,... woran liegt das?
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23:
| FileName: String;
saveDialog : TSaveDialog; begin
saveDialog := TSaveDialog.Create(self);
saveDialog.Title := 'Save your word file';
saveDialog.InitialDir := GetCurrentDir;
saveDialog.Filter := 'Text file (.txt)|*.txt';
saveDialog.DefaultExt := 'txt';
saveDialog.FilterIndex := 1;
if saveDialog.Execute then ShowMessage('File : '+saveDialog.FileName) else ShowMessage('Save file was cancelled');
saveDialog.Free; |
|
|
Xentar
      
Beiträge: 2077
Erhaltene Danke: 2
Win XP
Delphi 5 Ent., Delphi 2007 Prof
|
Verfasst: So 24.08.08 15:38
Es könnte daran liegen, dass du garnichts speicherst, sondern dir nur den gewählten Dateinamen anzeigen lässt (Zeile 20).
_________________ PROGRAMMER: A device for converting coffee into software.
Zuletzt bearbeitet von Xentar am So 24.08.08 15:38, insgesamt 1-mal bearbeitet
|
|
Boldar
      
Beiträge: 1555
Erhaltene Danke: 70
Win7 Enterprise 64bit, Win XP SP2
Turbo Delphi
|
Verfasst: So 24.08.08 15:38
Als erstes erzeugst du den Tsavedialog nicht dynamisch, sondern ziehst ihn einfach auch die Form (Seite Dialoge).Dann:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9:
| var f: textfile; begin
if savedialog1.execute then begin assignfile (f, savedialog1.filename); if fileexists (savedialog1.filename) then reset(f) else rewrite(f); write (f, 'blablabla'); closefile(f); |
|
|
ppl 
      
Beiträge: 53
|
Verfasst: So 24.08.08 15:52
sorry das ich das noch nicht so auf anhiep verstehe aber ich code noch nicht lange mit delphi,
also
bloader danke das hilft mir schon einen großen schritt weiter, nur wo bei dir steht blablala wo mein text rein soll, habe ich das prob das ich eine wordlist generiere,.. und ich nicht weiß wie ich das comando dort einfüge
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| SetLength(Map, 0);
if checkbox1.checked then begin SetLength(Map, Length(Map)+26); Map[High(Map)-25] := 'A'; Map[High(Map)-24] := 'B'; Map[High(Map)-23] := 'C'; Map[High(Map)-22] := 'D'; Map[High(Map)-21] := 'E'; |
und das muss der doch da jetzt speichern,... aber wie, ich verstehe das nicht, mein alter code
Delphi-Quelltext 1: 2: 3: 4:
| FileName: String; begin
FileName := 'C:\test.txt'; |
hat es ja ohne prob hinbekommen, ist halt nur beschissen das der das nicht dorthinspeichert wo ich es brauche/will
|
|
elundril
      
Beiträge: 3747
Erhaltene Danke: 123
Windows Vista, Ubuntu
Delphi 7 PE "Codename: Aurora", Eclipse Ganymede
|
Verfasst: So 24.08.08 16:03
Delphi-Quelltext 1: 2:
| if savedialog1.execute then Filename := Savedialog1.Filename; |
so kannst du einen dynamischen speicherpfad machen. jedoch würd ich die von dir benutzte variable "Filename" in "Dateiname" umbenennen um nicht fehler mit savedialogs o.ä. zu provozieren.
lg elundril
_________________ This Signature-Space is intentionally left blank.
Bei Beschwerden, bitte den Beschwerdebutton (gekennzeichnet mit PN) verwenden.
|
|
ppl 
      
Beiträge: 53
|
Verfasst: So 24.08.08 16:12
hey danke so klappt das wunderbahr, habe mich jetzt damit 2 tage rumgeschlagen >.<
|
|
elundril
      
Beiträge: 3747
Erhaltene Danke: 123
Windows Vista, Ubuntu
Delphi 7 PE "Codename: Aurora", Eclipse Ganymede
|
Verfasst: So 24.08.08 16:16
gerne. und da ich gelesen habe das du noch neu im geschäft bist hab ich noch einen kleinen link für dich, denn fortbildung schadet nie  : www.christian-stelzm...rials_crashkurs.html
lg elundril
_________________ This Signature-Space is intentionally left blank.
Bei Beschwerden, bitte den Beschwerdebutton (gekennzeichnet mit PN) verwenden.
|
|
Blackheart666
      
Beiträge: 2195
XP
D3Prof, D6Pers.
|
Verfasst: So 24.08.08 16:20
_________________ Blackheart666
Der Irrsinn ist bei Einzelnen etwas Seltenes, - aber bei Gruppen, Parteien, Völkern, Zeiten die Regel. (Friedrich Nietzsche)
|
|
ppl 
      
Beiträge: 53
|
Verfasst: So 24.08.08 16:26
meine liefert mir sowas type TSaveDialog = class (Dialogs.TOpenDialog);
das habe ich net verstanden,
nun was ich jetzt nicht schaffe ist das hier einzufügen,... der gibt mir immer nen fehler raus
Delphi-Quelltext 1: 2: 3:
| if saveDialog.Execute then ShowMessage('File : '+saveDialog.FileName) else ShowMessage('Save file was cancelled'); |
außerdem were ex nicht schlecht wenn es auch als txt gespeichert wird,... ich schtaffe es nicht den code so zusammen zu führen
kann mir einer tips oder hilfe hierzu geben?
|
|
elundril
      
Beiträge: 3747
Erhaltene Danke: 123
Windows Vista, Ubuntu
Delphi 7 PE "Codename: Aurora", Eclipse Ganymede
|
Verfasst: So 24.08.08 16:33
du solltest dir echt den link anschauen!
wenn du nun auch eine bestätigung ausgeben willst darfst du nich 2 mal execute aufrufen. execute führt den dialog aus und zeigt ihn an. und gibt dir als boolean zurück ob er erfolgreich (mit der OK-Taste) oder nicht erfolgreich (mit der Abbrechen-Taste) ausgeführt wurde. willst du in einem if-block nun mehrere anweisungen haben musst du mit begin und end arbeiten. Aber aufpassen!!! vor einem else darf kein strichpunkt kommen. das ganze sieht dann so aus:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8:
| var Dateiname: string; begin if SaveDialog1.Execute then begin Dateiname := SaveDialog1.Filename; Showmessage('Datei (' + Dateiname + ' wurde erfolgreich gespeichert.'); end else Showmessage('Der speichervorgang wurde abgebrochen'); |
lg elundril
//edit: hochkomma vergessen!
_________________ This Signature-Space is intentionally left blank.
Bei Beschwerden, bitte den Beschwerdebutton (gekennzeichnet mit PN) verwenden.
Zuletzt bearbeitet von elundril am So 24.08.08 23:02, insgesamt 1-mal bearbeitet
|
|
ppl 
      
Beiträge: 53
|
Verfasst: So 24.08.08 16:55
hey vielen dank du bist echt der beste, den link habe ich mir schon gespeichert, werde gleich mal reingucken wenn ich hier paar sachen erledigt habe vielen dank
werde dein codevorschlag gleich mal reinsetzen , hoffentlich funzt es
mfg
|
|
ppl 
      
Beiträge: 53
|
Verfasst: So 24.08.08 17:28
|
|
Blackheart666
      
Beiträge: 2195
XP
D3Prof, D6Pers.
|
Verfasst: So 24.08.08 17:36
Steht doch alles in der Fehlerbeschreibung geh die doch mal einzeln durch angefangen mit was ist Datei ?
_________________ Blackheart666
Der Irrsinn ist bei Einzelnen etwas Seltenes, - aber bei Gruppen, Parteien, Völkern, Zeiten die Regel. (Friedrich Nietzsche)
|
|
ppl 
      
Beiträge: 53
|
Verfasst: So 24.08.08 17:43
also ich dachte das man datei bei var definiren muss aber keine ahnung wie genau 
|
|
Xentar
      
Beiträge: 2077
Erhaltene Danke: 2
Win XP
Delphi 5 Ent., Delphi 2007 Prof
|
Verfasst: So 24.08.08 17:46
Da fehlt einfach nur ein '
_________________ PROGRAMMER: A device for converting coffee into software.
|
|