![]() |
Re: Stringende wieder hinzufügen
Ups.... durch TStringList - das könnte natürlich einiges Erklären...
|
Re: Stringende wieder hinzufügen
Wenn du einen TFileStream verwendest, sollte es funktionieren.
|
Re: Stringende wieder hinzufügen
Ich habe einen MemoryStream verwendet und dann aus Platte geschrieben... Doch so ganz entfert er die "&%"-Zeichen nicht. Hier mal die Originaldatei und die Datei aus dem Stream:
Code:
ÿØÿà JFIF H H ÿá‚Exif II*
† ” š ¢ ( 1 ª 2 Æ i‡ Ü T
Code:
Hm... hilft das weiter? Sieht seltsam aus...
ÿØÿà %JFI &% % %H&%&%ÿá Exi & I *&% & & % & % %†& & %& & ” %&% %&% & & &% & & %&% % & %&% % & ( % & & %&%1&%&%&% %ª&%& &%2 & &%& &% %&%&%&%&%&%&%&%&%&%i‡ %&%&%&%Ü&%&%&%
|
Re: Stringende wieder hinzufügen
Ich hatte im Else-Zweig eine Zeile vergessen.
|
Re: Stringende wieder hinzufügen
probier das mal:
Delphi-Quellcode:
in der performance kann man da sicher noch was machen... sollte aber funzzen...
program Project1;
{$APPTYPE CONSOLE} uses SysUtils; function Replace(const aStr: string; const aSearchStr: string; const aReplaceChar: char): string; var l,x: integer; c: PChar; begin setlength(result, length(aStr)); c := @aStr[1]; x := 0; for l := 1 to length(aStr) do begin inc(x); if pos(aSearchStr, c) = 1 then begin result[x] := aReplaceChar; inc(c, length(aSearchStr)); end else begin result[x] := c^; inc(c); end; end; setlength(result, x); end; begin writeln(Replace('a&%68&%a4', '&%', #0)); readln; end. ansonsten, denk an omata das ganze, kann nicht bei einem binärformat vernünftig funktionieren... hierzu müsstest du schon beim lesen, z.b. in hexcode umwandeln, in hexcode editieren und beim speichern den hex wieder in die binärdarstellung bringen... aber das wirst schon selbst noch merken ... :drunken: |
Re: Stringende wieder hinzufügen
Moin DJ-SPM,
warum nimmst Du nicht einfach StringReplace? :gruebel:
Delphi-Quellcode:
sErgebnisMitBinaerenNullen := StringReplace(Memo1.Text,'DeineErsatzzeichen',#00,[rfReplaceAll,rfIgnoreCase]);
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:10 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz