Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi HTML Datei nach individueller Eingabe speichern (https://www.delphipraxis.net/151737-html-datei-nach-individueller-eingabe-speichern.html)

Chr1zZz 30. Mai 2010 18:28


HTML Datei nach individueller Eingabe speichern
 
Halli Hallo Delphi-Praxis Forum :)

Ich bin neu hier und wollte mich heute nach ein paar Monaten Pause mal wieder an ein Delphi Werk setzen. Dabei kann ich leider nur die Grundlagen - ein halbes Jahr Delphi in der Schule dankt :)

Mein Idee ist es eine eMail-Signatur individuell abzuändern und direkt als html Datei zu speichern. Sprich Name, Telefonnummer, eMailadresse etc. etc. wird eingegeben und dann jeweils so in der html eingeschrieben. Mein Problem ist nun, dass ich leider keine Ahnung habe, wie ich das umsetze. Ich habe die ganzen Daten eingelesen und nun frag ich mich, wie ich den html code einsetze und wie ich so code, dass ich auf "Button"-druck eine html Datei speichere.

Namenloser 30. Mai 2010 18:44

Re: HTML Datei nach individueller Eingabe speichern
 
Für das Speichern der HTML-Datei kannst du Delphi-Referenz durchsuchenTStringList verwenden, deren Property TStringList.Text du ganz einfach mit deinem generierten HTML-Code füllen kannst. Alternativ kannst du die Stringliste auch zeilenweise füllen, indem du die Methode TStringlist.Add aufrufst. In einer Datei abspeichern tust du den Inhalt der Stringliste mit der Methode TStringList.SaveToFile.

Für das Erzeugen des HTML-Codes gibt es viele Möglichkeiten - im Prinzip kannst du den String einfach mithilfe des +-Operators zusammenbauen. Eine elegantere Möglichkeit wäre, die Delphi-Referenz durchsuchenFormat-Routine zu benutzen. Delphi-Referenz durchsuchenStringReplace ginge zur Not auch.

himitsu 30. Mai 2010 21:24

Re: HTML Datei nach individueller Eingabe speichern
 
(TStringList)
Alternativ könnte man sogar eine XML-Lib (selbst mit MSXML ginge sowas) nehmen und damit den HTML-Code erstellen, denn HTML ist quasi auch nur eine weniger strikte Variante (was die Syntax betrifft) vom XML.

Oder wie wäre es mit Delphi-Referenz durchsuchenFormat?
Man erstelle sich den HTML-Code als Text, füge ein paar Platzhalter %s an den entsprechenden Stellen ein und laße diese durch die gewünschten Daten ersetzen.

Chr1zZz 30. Mai 2010 21:49

Re: HTML Datei nach individueller Eingabe speichern
 
okay, ich merke, mehr als eine Einführung in Delphi war es wirklich nicht in der Schule =D

Also wie gesagt ich habe ein paar Textfelder deren Inhalt wie Name, Telefonnummer etc ausgelesen werden und dann verarbeitet werden. Soweit habe ich auch kein Problem. Wenn ich die TStringList Methode richtig verstehe, dann erstellt Delphi eine codeinterne Liste mit dem HTML Code und ich füge an die Stelle " Vorname Nachname</br>" dann nur die passenden Variablen ein.

Wie funktioniert denn die Lösung mit dem Format? Ich nehme den HTML Code und füge dann ?Vorname ?Nachname als Beispielsplatzhalter ein und definiere dann, dass die variable vorname:=?Vorname ist? Also die variable zum Platzhalter gehört?

Namenloser 30. Mai 2010 23:23

Re: HTML Datei nach individueller Eingabe speichern
 
Mal ein kleines Beispiel für die Format-Routine:
Delphi-Quellcode:
var
  Name: string;
begin
  Name := 'Hans';
  ShowMessage(Format('Hallo, %s! %d %s haben %d Beine', [Name, 3, 'Hühner', 6]));
Ergibt dann 'Hallo, Hans! 3 Hühner haben 6 Beine'.

Wie du siehst gibt es verschiedene Platzhalter: Die wichtigsten sind %s (String) und %d (Ganzzahl) und %f bzw. %g (Gleitkommazahl). Genaueres zu den Formatierungsoptionen findest du in der Hilfe.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:32 Uhr.

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