Storable verwende ich zwar teilweise fuer persistenz, aber empfehlen kann ich das nicht unbedingt, weil bei einem Update von Storable gelegentlich die binaere Codierung geaendert wird, und man kann somit mit aelteren Storable's erzeuge Dateien nicht mehr einlesen...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
use Data::Dumper;
my $complexVar = { a => 1, b => [2,3,4], c => 5 };
unless (open FH, ">$file")) {
die "Error in opening '$file' for writing: $!\n";
}
print FH Dumper($complexVar);
close (FH);
undef($complexVar); # weg issi
my $complexVar2 = &ReadDump($file);
sub ReadDump {
my $file = shift;
local $/; # undef, alles auf einmal einlesen
open (FH, $file) or die "Error in reading '$file': $!\n";
my $string = <FH>;
close (FH);
my $var = eval $string;
return $var;
} # ReadDump
(nicht getestet)
Mit YAML habe ich mich noch nicht beschaeftigt, sieht aber gut aus...