GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Data::Hexify(3) User Contributed Perl Documentation Data::Hexify(3)

Data::Hexify - Perl extension for hexdumping arbitrary data

  use Data::Hexify;
  print STDERR Hexify(\$blob);

This module exports one subroutine: "Hexify".

"Hexify" formats arbitrary (possible binary) data into a format suitable for hex dumps in the style of "xd" or "hexl".

The first, or only, argument to "Hexify" contains the data, or a reference to the data, to be hexified. Hexify will return a string that prints as follows:

  0000: 70 61 63 6b 61 67 65 20 44 61 74 61 3a 3a 48 65  package Data::He
  0010: 78 69 66 79 3b 0a 0a 75 73 65 20 35 2e 30 30 36  xify;..use 5.006

and so on. At the left is the (hexadecimal) index of the data, then a number of hex bytes, followed by the chunk of data with unprintables replaced by periods.

The optional second argument to "Hexify" must be a hash or a hash reference, containing values for any of the following parameters:

first
The first byte of the data to be processed. Default is to start from the beginning of the data.
length
The number of bytes to be processed. Default is to proceed all data.
chunk
The number of bytes to be processed per line of output. Default is 16.
group
The number of bytes to be grouped together. Default is 1 (no grouping). If used, it must be a divisor of the chunk size.
duplicates
When set, duplicate lines of output are suppressed and replaced by a single line reading "**SAME**".

Duplicate suppression is enabled by default.

showdata
A reference to a subroutine that is used to produce a printable string from a chunk of data. By default, a subroutine is used that replaces unwanted bytes by periods.

The subroutine gets the chunk of data passed as argument, and should return a printable string of at most "chunksize" characters.

align
Align the result to "chunksize" bytes. This is relevant only when processing data not from the beginning. For example, when "first" is 10, the result would become:

  0000:                ...    74 61 3a 3a 48 65            ta::He
  0010: 78 69 66 79 3b ... 65 20 35 2e 30 30 36  xify;..use 5.006
  ... and so on ...
    

Alignment is on by default. Without alignment, the result would be:

  000a: 74 61 3a 3a 48 ... 79 3b 0a 0a 75 73 65  ta::Hexify;..use
  001a: 20 35 2e 30 30 ... 73 65 20 73 74 72 69   5.006;.use stri
  ... and so on ...
    
start
Pretend that the data started at this byte (while in reality it starts at byte "first"). The above example, with "start => 0", becomes:

  0000: 74 61 3a 3a 48 ... 79 3b 0a 0a 75 73 65  ta::Hexify;..use
  0010: 20 35 2e 30 30 ... 73 65 20 73 74 72 69   5.006;.use stri
  ... and so on ...
    

Data::Dumper, YAML.

Johan Vromans, <jvromans@squirrel.nl>

Copyright (C) 2004 Squirrel Consultancy

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.6.0 or, at your option, any other version of Perl 5 you may have available.

2004-11-05 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.