AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Stringende wieder hinzufügen

Ein Thema von TheMiller · begonnen am 17. Aug 2008 · letzter Beitrag vom 17. Aug 2008
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#11

Re: Stringende wieder hinzufügen

  Alt 17. Aug 2008, 17:00
Ups.... durch TStringList - das könnte natürlich einiges Erklären...
  Mit Zitat antworten Zitat
Apollonius

Registriert seit: 16. Apr 2007
2.325 Beiträge
 
Turbo Delphi für Win32
 
#12

Re: Stringende wieder hinzufügen

  Alt 17. Aug 2008, 17:01
Wenn du einen TFileStream verwendest, sollte es funktionieren.
Wer erweist der Welt einen Dienst und findet ein gutes Synonym für "Pointer"?
"An interface pointer is a pointer to a pointer. This pointer points to an array of pointers, each of which points to an interface function."
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#13

Re: Stringende wieder hinzufügen

  Alt 17. Aug 2008, 17:12
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:
ÿØÿà %JFI &%  %  %H&%&%ÿá  Exi &  I *&% &  &  % &  %   %†& &     %& &  ”   %&%       %&% &  &  &% &  &  %&% %   &  %&% %   &  ( %   &  & %&%1&%&%&% %ª&%& &%2 & &%& &%  %&%&%&%&%&%&%&%&%&%i‡ %&%&%&%Ü&%&%&%
Hm... hilft das weiter? Sieht seltsam aus...
  Mit Zitat antworten Zitat
Apollonius

Registriert seit: 16. Apr 2007
2.325 Beiträge
 
Turbo Delphi für Win32
 
#14

Re: Stringende wieder hinzufügen

  Alt 17. Aug 2008, 17:14
Ich hatte im Else-Zweig eine Zeile vergessen.
Wer erweist der Welt einen Dienst und findet ein gutes Synonym für "Pointer"?
"An interface pointer is a pointer to a pointer. This pointer points to an array of pointers, each of which points to an interface function."
  Mit Zitat antworten Zitat
grenzgaenger
(Gast)

n/a Beiträge
 
#15

Re: Stringende wieder hinzufügen

  Alt 17. Aug 2008, 17:19
probier das mal:
Delphi-Quellcode:
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.
in der performance kann man da sicher noch was machen... sollte aber funzzen...

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 ...
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.119 Beiträge
 
Delphi 11 Alexandria
 
#16

Re: Stringende wieder hinzufügen

  Alt 17. Aug 2008, 23:43
Moin DJ-SPM,

warum nimmst Du nicht einfach StringReplace?

sErgebnisMitBinaerenNullen := StringReplace(Memo1.Text,'DeineErsatzzeichen',#00,[rfReplaceAll,rfIgnoreCase]);
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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:38 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 by Thomas Breitkreuz