Ich arbeite viel mit Netzwerk- und serieller Kommunikationssoftware, daher ist es oft notwendig für mich Code zu haben, um hex Dumps von Datenpaketen anzuzeigen oder zu protokollieren.Standard C++ Hex Dump Code
Jedes Mal, wenn ich dies tue, schreibe ich eine weitere Hex-Dump-Routine von Grund auf neu. Ich bin dabei, es wieder zu tun, aber ich dachte, ich würde hier fragen: Gibt es irgendeinen guten kostenlosen Hex-Dump-Code für C++ da draußen?
Eigenschaften Ich möchte:
- N Bytes pro Zeile
- optional ASCII/UTF8-Dump neben dem hex
- konfigurierbaren Einzug, pro-line-Präfixe (wobei N irgendwie konfigurierbar), pro -Linie Suffixe usw.
- minimale Abhängigkeiten (im Idealfall würde ich mag den Code für alle in einer Header-Datei sein, oder ein Ausschnitt sein, die ich in nur einfügen können)
Edit: Klarstellung: Ich bin auf der Suche nach Code, den ich problemlos in meine eigenen Programme in stderr, stdout, Log-Dateien oder andere solche Ausgabeströme schreiben können. Ich bin nicht auf der Suche nach einem Befehlszeilen-Hex-Dump-Dienstprogramm.
perfekt!das rockt. Ich benutze einen Socket-Reader und ich rief die Funktion mit "hexdump (buffer, bytecount);" und es funktioniert wie ein Charme! Danke! –
printf ("% 02x", (unsigniert) (buf [i + j])); – DAG