Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Stream wie Editor einlesen (https://www.delphipraxis.net/118817-stream-wie-editor-einlesen.html)

TheMiller 17. Aug 2008 13:48

Re: Stream wie Editor einlesen
 
Zitat:

wenn du solche sachen machen willst, musst du die datei byteweise einlesen und interpretieren. entweder als hex oder die nicht darstellbaren zeichen gegen ein anderes ersetzen.

PS: wegen des unicode zuges solltest besser 'n file of char verwenden, statt of byte...
Sorry, aber ich habe davon keine Ahnung. Ich habe die Funktion aus der geposteten Source verwendet, die das "#0"-Zeichen ersetzt. Jetzt liest er den Kram komplett ein. Nur ist das dann Bitweise oder was habe ich dann? Ist das Text-Format?

Bitte erklärt ihr mir ein bisschen Theorie. Ich mache das einfach, um zu lernen. Mich hat es interessiert, was passiert, wenn ich eine Datei (zb MP3) im Texteditor öffne und was ich dann sehe!

Danke

Deep-Sea 18. Aug 2008 07:34

Re: Stream wie Editor einlesen
 
Zitat:

Zitat von DJ-SPM
Mich hat es interessiert, was passiert, wenn ich eine Datei (zb MP3) im Texteditor öffne und was ich dann sehe!

Was du dann siehst? Nichts, womit irgend jemand etwas anfangen könnte :-D Wenn dann musst du es schon - wie grenzgaenger gesagt hat - z.B. als Hexadezimal darstellen.

TheMiller 19. Aug 2008 17:29

Re: Stream wie Editor einlesen
 
Jetzt habe ich doch nochmal eine Frage...

Im Windows Editor sieht man doch auch Leerzeichen statt eines bescheuerten "Trennzeichens" wie ich es gemacht habe. Ich habe ja alle #0 durch &% ersetzt. Wieso kann der Editor die Datei richtig anzeigen, ohne etwas ersetzen zu müssen?

Danke

_frank_ 19. Aug 2008 18:17

Re: Stream wie Editor einlesen
 
du kannst doch auch durch leerzeichen ersetzen...mehr macht der windows-editor vermutlich auch nicht, aber in dem Moment, wo du eine solche ersetzung machst und nicht reproduzieren kannst, welches zeichen ursprünglich da war, kannst du sie nicht mehr "editieren". es gibt nicht ohne grund Hexeditoren...auch diese haben eine Textansicht, ebenfalls mit ersetzten steuerzeichen.

vielleicht mal kurz als Erklärung...steuerzeichen sind zeichen, die nicht im normalen Texteditor darstellbar sind, im ansi-code sind diese <$20. bestimmte steuerzeichen (#8,#13,#10) werden entsprechend interpretiert. z.b. ein zeilenumbruch besteht unter windows aus #13#10. in einer Binärdatei hat diese zeichenfolge nicht diese Funktion.somit ist eine normale textanzeige zum bearbeiten von Binärdateien ungeeignet (nur unterstützend zur besseren Lesbarkeit).

was willst du denn sehen? ohne wissen, wie die Datei aufgebaut ist, wirst du mit der textanzeige weniger anfangen können, als mit der Hex-Darstellung.

HTH Frank

grenzgaenger 19. Aug 2008 20:42

Re: Stream wie Editor einlesen
 
das ist leider nur der halbe teil. DJ-SPM möcht nämlich die daten ändern und auch wieder zurückspeichern ... :-)

ps: da fällt mein, da liegt doch der HxD in der freeware section... 'n prima Hexeditor :-) kannst mal probieren... :-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:29 Uhr.
Seite 2 von 2     12   

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