AGB  ·  Datenschutz  ·  Impressum  







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

Suchen/Ersetzen in grossen Dateien

Ein Thema von hoika · begonnen am 31. Mai 2012 · letzter Beitrag vom 31. Mai 2012
 
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.585 Beiträge
 
Delphi 12 Athens
 
#7

AW: Suchen/Ersetzen in grossen Dateien

  Alt 31. Mai 2012, 12:23
Es kommt drauf an, wie ersetzt wird.
Wird jedes Stück einzeln ersetzt und immer wieder alles nachfolgende verschoben, dann muß es zwangsläufig langsam sein.

Wenn man alles in eine andere Datei / einen anderen speicherblock kopiert, dessen Größe (beim Speicherblock) vorher berechnet wurde und dann wird nur noch das unveränderte rüberkopiert, und dazwischen das zu Ersetzende eingefügt, dann geht es schneller.
Bei einer Datei könnte man z.B. vorher alles suchen, sich die Positionen merken und
- wenn der Ersatztext länger ist, dann fängt man von hinten an einzufügen (vorher die Datei-/Blockgröße anpassen)
- wenn Er kürzer ist, dann eben von vorne (nachher die Datei-/Blockgröße anpassen).
(Gleiches gilt für eine Inplace-Ersetung im Speicherblock/RAM)


Für StringReplace hatte ich vor langem mal einen kleinen Code veröffentlicht, welcher das etwas optimiert.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
 


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 10:56 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