4 Stimmen

Delphi-Funktion zur Konvertierung des Ergebnisses von WrapText in TStringList

Ich verwende diese Funktion, um Zeilenumbrüche in eine Zeichenkette einzufügen, damit sie für den E-Mail-Versand schön formatiert ist:

  m := WrapText(m, #13#10, ['.',' ',#9,'-'], 60);

Das Problem ist, dass mein E-Mail-Client bei der Verarbeitung von Zeichenketten eine Obergrenze von 1023 Zeichen hat. Wenn also die ursprüngliche Länge von m größer als 1023 ist, wird sie abgeschnitten (Hinweis: Der E-Mail-Client verfügt wahrscheinlich über Ereignisse, um diese Situation zu handhaben, aber ich denke, es ist einfacher, einfach Zeichenketten einzugeben, die kleiner als das Limit sind).

Ich suche nach einem " WrapTextToStringList "Funktion wie folgt:

var
  mStringList: TStringList;
begin
  mStringList := WrapTextToStringList(m, #13#10, ['.',' ',#9,'-'], 60);

Nehmen wir an, ich übergebe den Text einer E-Mail-Nachricht mit 220 Zeichen. Das Ergebnis wäre eine String-Liste mit etwa 4 Einträgen.

Ich denke, dies läuft einfach darauf hinaus, eine Funktion zu erstellen, die eine Zeichenkette bei #13#10 in eine String-Liste.

Hat jemand einen?

7voto

Mason Wheeler Punkte 79858

TStringList hat bereits eine eingebaute Methode zum Parsen einer Zeichenkette bei #13#10 in eine String-Liste.

MyStringList := TStringList.Create;
MyStringList.Text := MyString;

Dadurch wird die Liste aufgefüllt, indem die Zeichenkette analysiert und ein neuer Eintrag in der Liste erstellt wird, sobald ein Rückgabewert gefunden wird.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X