Thread 2 Dateien vergleichen und Ergebnis in 3 schreiben: 2 Dateien vergleichen in 3 Datei (8 answers)
Opened by xalo at 2005-07-22 13:04

J-jayz-Z
 2005-07-22 21:52
#56606 #56606
User since
2005-04-13
625 Artikel
BenutzerIn
[Homepage] [default_avatar]
okay, hier mal ein paar Tipps:
man kann eine Datei wie folgt öffnen:
Code: (dl )
1
2
3
4
5
6
#Datei zum lesen öffnen und Fehler abfangen
open(DATEI1, "<datei1.txt")|| die "Fehler:$!";
#Datei in @datei1 speichern
my @datei1 = <DATEI1>;
#Dateihandle schließen
close(DATEI1);

das kannst du mit beiden dateien machen
dann kannst du das array @datei1 mit einer schleife durchlaufen:
Code: (dl )
1
2
3
4
5
6
7
8
9
foreach my $line (@datei1) {
#und nun mit übereinstimmungen von @datei2 suchen
map {
#Wenn das aktuelle Element von map ($_) mit $line
#übereinstimmt, wird es in die Datei geschrieben, die
#mit dem Handle NEUEDATEI geöffnet wurde
print NEUEDATEI "$_" if $line eq $_;
} @datei2;
}

nun musst du das nur noch zusammen basteln.
Viel Spaß mit Perl wünsch ich dir! War eine gute Wahl :D
Nochwas: die NEUEDATEI öffnest du mit:
Code: (dl )
open(NEUEDATEI, ">new.txt") || die "Fehler: $!";
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="5065726c2d436f6d6d756e697479"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'

http://perl-tutor.de

View full thread 2 Dateien vergleichen und Ergebnis in 3 schreiben: 2 Dateien vergleichen in 3 Datei