[Dresden-pm] Frage zum Einlesen eines Textfiles

Renee Bäcker mailinglisten at renee-baecker.de
So Aug 30 09:10:36 PDT 2009


Hallo,

ich verstehe noch nicht so ganz, wo Dein Problem liegt.

So sollte man ganz einfach eine Datei einlesen können:

#!/usr/bin/perl

use strict;
use warnings;
use Getopt::Long;

GetOptions(
    'l=s' => \my $linebreak,
    'f=s' => \my $file,
);

my %map = (
    win   => "\015\012",
    linux => "\012",
    mac   => "\015",
);

$linebreak = 'win' unless $linebreak and exists $map{$linebreak};

# einlesen der Datei in einen extra Block, damit die Aenderungen
# an $/ später wieder zurückgestellt werden
{
    local $/ = $map{$linebreak};
    open my $fh, '<', $file or die $!;
    binmode $fh;
    while( my $line = <$fh> ) {
        chomp $line;
        print "Zeile: $line\n";
    }
}

Hans-Dietrich Kirmse schrieb:
> Hallo,
> 
> ich habe zu folgendem Problem leider nichts in der (mir zugängigen)
> Literatur bzw. im Web gefunden.
> 
> Es soll durch ein Perlprogramm ein Textfile eingelesen werden.
> Das Perl-Programm läuft einem Linux-Server, aber das Textfile ist
> normalerweise ein Textfile im Windows-Format. Es soll aber auch
> umgestellt werden können, sodass auch Files mit Linux-Zeilenumbrüchen
> bzw. mit Umbrüchen von Apple-Rechnern gelesen werden können.
> (das Script soll den betreffenden Typ nicht automatisch erkennen,
> sondern das soll in der Konfiguration angegeben werden.)
> 
> Kann mir hier jemand einen Tipp geben?
> 
> Im Voraus meinen Dank.
> 
> Mit freundlichen Grüßen
> Hans-Dietrich
> 
> 
> 
> _______________________________________________
> Dresden-pm mailing list
> Dresden-pm at pm.org
> http://mail.pm.org/mailman/listinfo/dresden-pm
> 
> 


-- 

Perl-Magazin: http://perl-magazin.de
Perl-Nachrichten: http://perl-nachrichten.de


Mehr Informationen über die Mailingliste Dresden-pm