Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   editor (https://www.delphipraxis.net/39652-editor.html)

monty.ms 5. Feb 2005 21:27


editor
 
hallo

ich arbeite zur zeit an einem kleinen programm (um mich ein bisschen in delphi einzu arbeiten)..

ich habe vor eine art ersatz für den standard editor zu schreiben. jetzt komm ich aber leider nicht weiter, und brauch eure hilfe:

ich habe bereits den opendialog eingerichtet. Nun will ich, dass er den Inhalt der .txt Datei in die Memo schreibt. Wie mache ich das?? und wie mache ich es, dass wenn ich die Datei speicher, der text aus der memo in die txt gespeichert wird??

wäre nett wenn ihr mir helft, bzw ansätze gebt! danke!

ps: wenn ich bei delphi auf "Hilfe" gehe, findet er die Datei nicht.. kann ich die irgendwo anders her noch bekommen?

mirage228 5. Feb 2005 21:29

Re: editor
 
Hi,

TMemo bietet Dir dafür die Methode Delphi-Referenz durchsuchenLoadFromFile bzw. Delphi-Referenz durchsuchenSaveToFile ;)

mfG
mirage228

alcaeus 5. Feb 2005 21:32

Re: editor
 
Hallo monty.ms,

eine Datei laden kannst du mit Delphi-Referenz durchsuchenTStrings.LoadToFile, speichern mit Delphi-Referenz durchsuchenTStrings.SaveToFile. In deinem Fall mit dem OpenDialog wuerde das so aussehen:

Delphi-Quellcode:
var
  FileName: String;

//...

//Laden
if OpenDialog1.Execute and FileExists(OpenDialog1.FileName) then
begin
  FileName := OpenDialog1.FileName;
  Memo1.Lines.LoadFromFile(FileName);
end;

//Speichern
Memo1.Lines.SaveToFile(FileName);
Noch eine kurze Erklaerung: Die Datei "FileName" wird dazu verwendet, den Dateinamen zu speichern, damit die Datei auch wieder gespeichert werden kann. Wenn also der OpenDialog mit "Open" bestaetigt wurde und die angegebene Datei existiert, so wird der Dateiname erstmal gespeichert, und anschliessend in das Memo geladen. Beim Speichern wird einfach mit SaveToFile der komplette Inhalt der Datei gespeichert.

Greetz
alcaeus

monty.ms 5. Feb 2005 21:47

Re: editor
 
ok.. danke euch beiden, hat super funktioniert, ..

das ist ja aber die "Speichern unter.." methode! Gibt es auch die möglichkeit direkt in die datei zu speichern ohne den dialog zu öffnen?

edit: ahhh ^^ .. sry mein fehler ;)

funzt.. danke schööön =)

alcaeus 5. Feb 2005 21:51

Re: editor
 
Hallo monty.ms,

das ist nicht "Speichern Unter", das ist speichern. Genau deshalb speicher ich auch den Namen der Datei in einer Variable, damit ich dann direkt mit .SaveToFile da reinschreiben kann. Der Dialog kommt nur bei Oeffnen einer Datei ;)

Greetz
alcaeus

Ultimator 5. Feb 2005 21:52

Re: editor
 
Fast genauso wie oben ;-)
Delphi-Quellcode:
Memo1.Lines.SaveToFile('C:\Programme\Borland\Delphi 7\bin\delphi32.exe');
OK, blödes Beispiel, wenn du Delphi weiterhin verwenden willst, aber das Prinzip dürfte klar sein ;-)

monty.ms 5. Feb 2005 22:05

Re: editor
 
mhh.. jetzt steh ich aber im konflikt..

ich hab einen speichern unter knopf der wunderbar funktioniert!
wenn man aber nun den speichern button klickt, obwohl die datei nicht existiert, dann sollte er ja doch mit dem speicherdialog arbeiten..

wie krieg ich das hin?

edit: k.. hat sich erledigt.. :)

monty.ms 5. Feb 2005 23:16

Re: editor
 
mhh.. nochmal zu dem thema speichern :) .. kurz vor dem ende, fällt mir auf, dass der die datei gar nicht mit der endung .txt speichert..

das hab ich dann wie folgt gelöst:

Delphi-Quellcode:
Memo1.Lines.SavetoFile(SaveDialog1.Filename+'.txt');
aber ich will ja auch in .doc format speichern lassen können,.. wie kann ich eine unterscheidung machen? mit if then else?

Airblader 5. Feb 2005 23:27

Re: editor
 
Doch, normal ist die Endung bereits dabei.

Ich vermute, dass bei dir bekannte Endungen ausgeblendet werden (Extras->Ordneroptionen/Interneroptionen)

air

monty.ms 5. Feb 2005 23:48

Re: editor
 
nein, nein.. das ist an.. es ist auch kein "editor" icon da.. es ist wirklich nur eine datei! ..

hier der komplette auszug:

Delphi-Quellcode:
procedure TForm1.BSave_uClick(Sender: TObject);
begin
if SaveDialog1.Execute then
 TRY
  Memo1.Lines.SavetoFile(SaveDialog1.Filename+'.txt');
 EXCEPT
  ShowMessage ('Fehler beim Speichern der Datei!');
 END;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:01 Uhr.
Seite 1 von 2  1 2      

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-2025 by Thomas Breitkreuz