Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Zeilenumbrüche in Memofeld beim Schreiben in Datei beachten (https://www.delphipraxis.net/93669-zeilenumbrueche-memofeld-beim-schreiben-datei-beachten.html)

Svenkan 9. Jun 2007 00:19


Zeilenumbrüche in Memofeld beim Schreiben in Datei beachten
 
Hey!
Folgendes Problem zu später Stunde:
ich lasse aus txt-Dateien den Inhalt auslesen und in ein Memo-Feld übergeben.
Nun lasse ich diesen Inhalt in Listen in eine htm-Datei schreiben. Leider wird für jede neue Zeile des Memo-Felds auch ein neuer Absatz innerhalb der Liste begonnen.
Ich möchte aber, dass dies erst geschieht, wenn auch wirklich ein Absatz vorhanden ist und nicht ein einfacher Zeilenumbruch.
Wie lässt sich dies realisieren? Oder benötige ich dazu evtl ein RichText-Feld?

mkinzler 9. Jun 2007 00:49

Re: Zeilenumbrüche in Memofeld beim Schreiben in Datei beach
 
Besser eine HTML-Komponente

marabu 9. Jun 2007 08:27

Re: Zeilenumbrüche in Memofeld beim Schreiben in Datei beach
 
Moin Sven,

das CMS FrameWork ZOPE verwendet in seinem Structured Text die Konvention, dass Absätze durch mindestens eine Leerzeile geschaltet werden:

Delphi-Quellcode:
function CreateUnorderedList(lines: TStrings): TStrings;
var
  i: Integer;
  isItem: Boolean;
begin
  Result := TStringList.Create;
  Result.Add('<ul>');
  isItem := False;
  for i := 0 to lines.Count do
    if (i = lines.Count) or (lines[i] = '') then
    begin
      if isItem
        then Result.Add('')
        else Continue;
      isItem := False;
    end else
    begin
      if isItem
        then Result.Add('
')
        else Result.Add('[*]');
      Result.Add(lines[i]);
      isItem := True;
    end;
  Result.Add('[/list]');
end;
Der Code soll nur das Prinzip verdeutlichen.

Grüße vom marabu


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