my $propertyHashRef = &readFileIntoHash($globalFormPageCfgFile); if (defined $propertyHashRef){ print "\n%property is defined \n it contains " . keys(%$propertyHashRef) ."\n" ; $propertyHashRef->{pageCount} = $pageSizeForForm; } else{ print "\nhash is not defined\n"; $propertyHashRef->{pageCount} = $pageSizeForForm; } &writeHashToFile($propertyHashRef,$globalFormPageCfgFile); return $pageSizeForForm; ##################################################################################################################### ###Falls die übergebene Datei existiert, werden die Werte in einen Hash gelesen, sofern sie dem format ###KEY=VALUE entsprechen ### ###Return:Referenz auf den Hash oder nichts ##################################################################################################################### sub readFileIntoHash{ my $inputFile = $_[0]; print "using input file $inputFile\n" ; my %exportHash; if (-e $inputFile){ open (HASHFILE,$inputFile) || die "file $inputFile konnte nicht geoeffnet werden\n"; %exportHash = map { chomp; split /\s*=\s*/, $_, 2; } ; close(HASHFILE); return \%exportHash; } else{ print "file $inputFile does not exist, returning undef\n"; return; } } ##################################################################################################################### ###Erwartet als Inputparameter eine HashRef und ein Dateinamen ### ###Schreibt den Inhalt des HASH in die Datei im Format ###KEY=VALUE ##################################################################################################################### sub writeHashToFile{ my %inputHash = %{$_[0]}; my $outputFile = $_[1]; print "writing into file $outputFile\n"; open(OUTFILE, ">$outputFile") || die "file $outputFile konnte nicht geoeffnet werden"; while(my @array = each( %inputHash )){ print OUTFILE "$array[0] = $array[1]\n"; } close(OUTFILE); }