Kapitel 1. Überblick

Ein einfacher FileHandler welcher die Bearbeitung beliebiger binärer Daten erlaubt.

Er kann verwendet werden, um die Inhalte einer beliebigen Datei auf der Basis einzelner Bytes zu modifizieren. Der Dateiinhalt wird komplett in den Speicher geladen und dann in einer hexadezimalen und einer ASCII Tabelle präsentiert, eine bei HEX Editoren gebräuchlichen Darstellung.

ASCII Kontrollzeichen (diejenigen Bytes mit einem Wert unter 0x20) werden in der HEX Tabelle mit einer helleren Farbe dargestellt als andere Bytes. Sie zeigen auch einen Tooltip Text mit der Bedeutung dieses Bytes, wenn der Mauszeiger darüber schweben gelassen wird.

Die Modifikation einzelner Bytes ist sowohl in der Tabelle mit einer Zelle pro Byte als auch in der ASCII Zeile rechts davon möglich.

Nach der Modifikation einer Tabellenzelle (sowohl HEX wie auch ASCII) muss entweder TAB oder ENTER gedrückt werden, um die Änderung zu bestätigen.

Eine Änderung in der ASCII Zelle wird nur diejenigen Bytes verändern, welche danach eine andere ASCII Repräsentation aufweisen. Damit wird das versehentliche Ändern von nicht-ASCII Bytes dieser Zeile verhindert.

Ausser durch direktes Bearbeiten individueller Byte-Zellen kann der Inhalt auch in verschiener Weise durch die verfügbaren Kommandos verändert werden. Viele von diesen arbeiten mit einem markierten Auswahlbereich von Bytes und arbeiten auf diesen. Falls nichts markiert ist, so wird das Byte an der aktuellen Cursor-Position betroffen sein, oder, falls der Cursor gerade in der Offset oder ASCII Spalte teht, die gesamte Zeile.

Mehrere der Kommandos verlangen nach einer Eingabe und dieser Eingabetext wird kreativ interpretiert, um eine bessere Verwendbarkeit zur Verfügung zu stellen, ohne die Toolbar mit zu vielen spezialisierten Kommandos zu überfüllen:

Falls ein Kommando ausgeführt wird, welches eine Eingabe zur Auführung benötigt, so wird ein Wert vorgeschlagen, welcher auf dem aktuellen Zustand beruht:

Ist also der gesamte Inhalt aktuell markiert, so wird die Ausführung des Finden-Kommandos den gesamten Hex-Inhalt in seinem Eingabefeld aufweisen ... was bei grossen Daten zum Problem werden kann.

Die folgenden inhaltsbezogenen Kommandos sind verfügbar:

Da dieser FileHandler das Modifizieren und Speichern der geladenen Daten unterstützt, ist dies von seiner Natur her ein Editor.

Um sich als richtiger Editor zu verhalten, ist es jedoch notwendig, den gesamten Dateiinhalt in den Speicher zu laden, um beim Editieren keine Änderungen an der darunter liegenden Datei nötig zu machen. Für grosse Dateien kann dies daher zu Problemen mit dem Arbeitsspeicher führen.