nntp2http.com
Posting
Suche
Optionen
Hilfe & Kontakt

Re: umlautproblem

Von: Gerhard Wolf (quisquiliae@gmx.de) [Profil]
Datum: 06.10.2009 22:41
Message-ID: <7j1ockF31co8jU1@mid.individual.net>
Newsgroup: de.comp.lang.perl.misc
hoppla, da hab ich wohl das bastel-script geposted. Anbei das aktuelle,
was aber mein Problem auch nicht löst:

#!/usr/bin/perl -w
use strict;
use warnings;

my $file;
my $ksk_data      = "/media/sda3/harry/data/ksk";
my $download_data = "/home/harry/Desktop";
my @files         = glob( $download_data . "/*.csv" );
my $valid_header
= qq
{"Kontonummer";"Datum";"Valuta";"Geschaftsvorfall"
;"Verwendungszweck";"Betrag";"Name";"Konto";"
BLZ"};

for $file (@files) {
merge_files( $ksk_data . "/kto3036882.csv", $file );
}

sub merge_files {
my ( $target, $source ) = @_;
my %csvline;
my $files;
my $header;

open my $SOURCE, '<', $source or die $!;
$header = <$SOURCE>;
$header =~ s{\\}{_}xgs;
if ( $header ne $valid_header ) {
print $source. " hat einen anderen Aufbau\n";
return -1;
}

while (<$SOURCE>) {
$csvline{$_} = 1;
}

close $SOURCE or die $!;

# unlink $target;
open my $CSV, '<', $target or die $!;
while (<$CSV>) {
$csvline{$_} = 1;
}
close $CSV;
open my $MERGED, '>', $target or die $!;
print $MERGED $header;
while ( my ( $key, $value ) = each(%csvline) ) {
if ( $key ne $header ) {
print $MERGED $key;
}
}
close $MERGED;
}

[ Auf dieses Posting antworten ]