Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Problem beim bearbeiten von HTML Seiten (https://www.delphipraxis.net/50315-problem-beim-bearbeiten-von-html-seiten.html)

mr.unbekannt 23. Jul 2005 16:52


Problem beim bearbeiten von HTML Seiten
 
Hallo an alle User!
Ich habe ein problem beim bearbeiten einer html datei! Mein Delphi gibt mir bei "rewrite" den E/A-Fehler 32 zurück. kategorie und rezeptname sind edit-felder, pfad ist ein einfacher string. Bitte um schnell Hilfe!

Mfg Mr.unbekannt

Delphi-Quellcode:
procedure TForm1.ErstellenClick(Sender: TObject);
var f:textfile;
begin
if listbox1.Items.IndexOf(kategorie.Text)=-1
then begin
        listbox1.Items.Add(kategorie.Text);
        createdir(pfad+kategorie.Text);
        end
else showmessage('Diese Kategorie bestand schon!');
filecreate(pfad+kategorie.Text+'\'+rezeptname.Text+'.html');
assignfile(f,pfad+kategorie.Text+'\'+rezeptname.Text+'.html');
rewrite(f);
writeln(f,'<HTML>');
writeln(f,'<HEAD>');
writeln(f,'</HEAD>');
writeln(f,'<BODY bgcolor="#AFAFAF">');
writeln(f,'<h1>'+rezeptname.text+'</h1>');
writeln(f,beschreibung.text);
writeln(f,'</BODY>');
writeln(f,'</HTML>');
closefile(f);
end;

fkerber 23. Jul 2005 16:53

Re: Problem beim bearbeiten von HTML Seiten
 
Hi!

Lass dir mal ausgeben, auf was für eine Datei du da "assignen" willst.
Stimmt dieser Pfad?

Ciao Frederic

mr.unbekannt 23. Jul 2005 16:56

Re: Problem beim bearbeiten von HTML Seiten
 
das programm erstellt den pfad und die datei nur er will sie nicht beschreiben! vieleicht ein andrer datei-typ?

Speedmaster 23. Jul 2005 16:57

Re: Problem beim bearbeiten von HTML Seiten
 
Gehört zwar nicht dazu aber...:
"Funktion des Programmes strikt von der Oberfläche Trennen"

mr.unbekannt 23. Jul 2005 16:58

Re: Problem beim bearbeiten von HTML Seiten
 
Zitat:

Zitat von Speedmaster
Gehört zwar nicht dazu aber...:
"Funktion des Programmes strikt von der Oberfläche Trennen"

Wie meinst du das?

DGL-luke 23. Jul 2005 17:13

Re: Problem beim bearbeiten von HTML Seiten
 
Zitat:

Zitat von Speedmaster
Gehört zwar nicht dazu aber...:
"Funktion des Programmes strikt von der Oberfläche Trennen"

Damit meint er, du sollst das ganze nicht im OnClick machen, sondern in einer eigenen prozedur bzw. Funktion.

mr.unbekannt 23. Jul 2005 17:14

Re: Problem beim bearbeiten von HTML Seiten
 
es ist nur ein normaler button der geklickt wird, gebe mal bitte ein beispiel an!

um 18:26: Kann mir mal jemand helfen????

[edit=alcaeus]Push-Beitrag mit diesem Zusammengefuegt. Pushen erst nach 24 Stunden! :warn: Mfg, alcaeus[/edit]

Phistev 23. Jul 2005 17:34

Re: Problem beim bearbeiten von HTML Seiten
 
SChon mal was von Dateien sperren gehört? Wenn eine Datei geöffnet wird (u.a. durch FileCreate()), sollte man sie auch wieder schließen. Der Befehl dazu heißt FileClose.

hanselmansel 23. Jul 2005 17:40

Re: Problem beim bearbeiten von HTML Seiten
 
HiHo,

Du soll(te)st einfach nicht schreiben:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
//Do
//something
//with
//a1
//,
//a2 
//and
//a3
end;
Sondern die Funkionalität in eine eigene Prozedur schreiben. Das ist (meines Wissens) der erste Schritt zu wiederverwendbarem Code. Gewöhn' dich schonmal dran, wenn du in dieser Richtung längere Zeit arbeiten willst.

Besser:
Delphi-Quellcode:
 
procedure ZaehlerZuWertigkeit(Zeahler, Wert:TDynArrayOfInteger;Var Wertigkeit:TDynArrayOfInteger);
begin
//Do something with a1, a2 and a3
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
ZaehlerZuWertigkeit(a1,a2,a3);
end;
MfG,

hanselmansel


P.S.: Eine plausible antwort scheint ja von Pistev gekommen zu sein! *freu* :thumb:

jfheins 23. Jul 2005 17:45

Re: Problem beim bearbeiten von HTML Seiten
 
Desweiteren wäre ein Filestream sinvoller weil einfacher und ein Ressourcenschutzblock gehört auch drum ;)
Delphi-Quellcode:
Datei := TFileStream.Create('PfadZurDatei');
try
  // machwas z.B. mit .Read oder mit .Write
finally
  FreeAndNil (FileStream);
end;

// Mach was anderes


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:00 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