You could use XML, there are many ways depending on the complexity of your data.
A simple XML solution would be something like this ;
#c:/perl/bin/perl -w
use strict;
use XML::Dumper;
my $dumpobj = new XML::Dumper;
my $hashref_send = [
{
fname => 'Fred',
lname => 'Flintstone',
residence => 'Bedrock'
},
{
fname => 'Barney',
lname => 'Rubble',
residence => 'Bedrock'
}
];
# convert to XML string for sending
my $xml_msg = $dumpobj->pl2xml( $hashref_send );
# or Dump to a file for debugging
my $file = "dump.xml";
$dumpobj->pl2xml( $hashref_send, $file );
# Convert received XML back to hash
my $hashref_rec = $dumpobj->xml2pl( $xml_msg );
# Check the result
use Data::Dumper;
print Dumper($hashref_rec);
print $$hashref_rec[0]{'fname'};
If you are using ActiveState, you need to install 2 modules
XML::Parser - use PPM
XML::Dumper - don't use PPM because early version are broken, instead download the
source from CPAN as Dumper.pm and save it in C:\Perl\site\lib\XML
poj |