Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#17

Re: Zeichen in String an Position x ersetzten

  Alt 19. Sep 2005, 08:34
Luckie,

mit long string meine ich wirklich AnsiString. Beim längen-gezählten AnsiString wird zwar das #0 Zeichen anstandslos mitgezählt, kopiert, etc., aber sobald eine der vielen internen automatischen Wandlungen nach PChar statt findet - AUTSCH. Schau mal hier:

Delphi-Quellcode:
var
  s: AnsiString;
begin
  s := 'Bisweilen geh ich im Walde so für mich hin, nach schmackhaften Pilzen steht mir der Sinn';
  s[43] := #0;
  ShowMessage(Format('Der String "%s" hat die Länge %d', [s, Length(s)]));
end;
Deswegen sollte man solange keine null chars in einer string Variablen mitführen, bis man genau weiß was man da tut.

Freundliche Grüße vom marabu
  Mit Zitat antworten Zitat