AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

#$d#$a -> \n

Ein Thema von rowkajjh · begonnen am 14. Jan 2006 · letzter Beitrag vom 14. Jan 2006
Antwort Antwort
rowkajjh

Registriert seit: 9. Jan 2006
38 Beiträge
 
#1

#$d#$a -> \n

  Alt 14. Jan 2006, 12:22
Hallo,

ich suche in einem Text nach der ersten Leerzeile. Mach ich mit

if msg[i]='then break; Funktioniert auch. Leider enthält der Text teilweise anstelle von "echten" Newlines manchmal "#$D#$A". Beim wegspeichern werden die brav nach CRLF umgewandelt. Leider schaffe ich aber nicht, diese beim Suchen zu beachten. Obiger Vergleich funktioniert ja nicht, das msg[i] ja nicht '' ist, sondern '#$D#$AWeiterer Text'. Ich habe schon mit Pos und Comparestr versucht - leider keinen Erfolg. Was kann ich tun?

Kompletter Code:
Delphi-Quellcode:
// Suche nach erster Leerzeilen
for i:=0 to msg.Count-1 do begin
    if msg[i]='then break; // end of header
    if (Length(msg[i])>6) then
    begin
      if (CompareStr('#$D#$A', msg[i])=0) then
      begin
        MessageDlg('Leerzeile! ', mtError, [mbOK], 0);
        break;
      end;
    end;
end;
Danke!
  Mit Zitat antworten Zitat
Benutzerbild von tomsel
tomsel

Registriert seit: 8. Dez 2005
Ort: am Chiemsee
304 Beiträge
 
Delphi 7 Professional
 
#2

Re: #$d#$a -> \n

  Alt 14. Jan 2006, 12:32
Wenn ich mich richtig irre, solltest du beim Vergleich mit '#$D#$A' einfach nur die Hochkommas weglassen. Also nur #$D#$A bzw. #13#10 schreiben. Die Länge des Strings ist dabei auch nicht 6, sondern 2.
Ein Experte ist ein Mann, der hinterher genau sagen kann, warum seine Prognose nicht gestimmt hat. (Winston Churchill)
  Mit Zitat antworten Zitat
rowkajjh

Registriert seit: 9. Jan 2006
38 Beiträge
 
#3

Re: #$d#$a -> \n

  Alt 14. Jan 2006, 12:34
Zitat von tomsel:
Wenn ich mich richtig irre, solltest du beim Vergleich mit '#$D#$A' einfach nur die Hochkommas weglassen. Also nur #$D#$A bzw. #13#10 schreiben. Die Länge des Strings ist dabei auch nicht 6, sondern 2.

Jupp, danke!
  Mit Zitat antworten Zitat
Oxmyx

Registriert seit: 21. Sep 2004
499 Beiträge
 
#4

Re: #$d#$a -> \n

  Alt 14. Jan 2006, 14:01
Du kannst auch die Funktion Trim verwenden, die entfernt alle unnötigen Whitespace-Zeichen und Kontrollzeichen aus dem String.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:05 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