Thread Transfer zwischen zwei dateien
(7 answers)
Opened by Gast at 2004-02-15 16:53
[quote=Guest,15.02.2004, 15:53]Hallo habe folgendes Problem:
ich öffne eine Datei ersetze die Umlaute und schreibe dann in eine 2. Datei aber es klappt nicht: [CODopen (IN, "<daten.xml");[/quote] setze bitte das nächste mal richtige code-tags. warum überprüfst du nicht, ob das open geklappt hat? open IN, '<', 'daten.xml' or die "Konnte daten.xml nicht öffnen, weil: $!"; Quote bitte alle variablen deklarieren! my @file_lines = <IN>; Quote auch hier empfiehlt es sich, perl nach dem grund zu fragen, ausserdem ist ein 'or' idiomatischer als ||: open OUT, '>','daten2.xml' or die "cannot open file: $!"; Quote das heisst übersetzt: 'solange das array @file_lines nicht leer ist'. aber du tust ja gar nichts mit dem array. warum sollte es also jemals leer sein? das programm läuft endlos weiter, wir haben es also hier mit einem klassischen exemplar einer endlos-schleife zu tun. foreach my $file_line (@file_lines) { Quote wieso ersetzt du umlaute, aber kein ß? wiedermal ein klassisches beispiel, warum man HTML::Entities benutzen sollte, damit man keine zeichen vergisst: encode_entities($file_line); Quote warum schreibst du die variable in anführungszeichen? Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wie frage ich & perlintro brian's Leitfaden für jedes Perl-Problem |