wenn die datei editiert werden soll, koennte dafuer das Modul Tie::File hilfreich sein, z.B.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
use Tie::File;
my @file;
tie @file, 'Tie::File', $filename or die "Error: couldn't tie $filename to array: $!\n";
# jedes element von @array entspricht jetzt einer zeile
foreach my $line (@file) {
my %data = &ParseLine($line);
# mach was mit %data; zum aendern einer Zeile einfach $line neu bilden
} # foreach
untie(@array);
# -----------------------------------------------------
sub ParseLine {
my ($line) = @_;
my %data = ();
foreach my $item (split(/,/, $line)) { # item ist z.B. "Ursrpung=001"
# $key ist z.B. "Ursprung", $value z.B. "001"
my ($key, $value) = split(/=/, $item, 2);
# in hash speichern; achtung, falls ein key mehrere werte hat, bleibt nur
# der letzte
$data{$key} = $value;
} # foreach
return %data;
} # ParseLine
[/code]