Programmieren - alles kontrollieren 4.934 Themen, 20.613 Beiträge

[PERL] Falscher Wert wird ausgegeben

CGWS / 4 Antworten / Flachansicht Nickles

Hallo zusammen,
ich versuche gerade eine CSV Datei zu parsen, die aus 29 Spalten besteht. Leider wird immer der Wert der ersten Zeile ausgegeben und nicht der Wert von jeder einzelnen Zeile an der Stelle.

Hier der Code:

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

use Text::CSV;
my $csv = Text::CSV->new({ sep_char => ';' });
my $file = "AB.csv";
my $new_file = "AB.ldif";
my @fields;

open (my $fh, '>:encoding(utf8)', $new_file) or die;

    open(my $data, '<:encoding(utf8)', $file) or die "Could not open '$file' $!\n";
    while (my $line = <$data>) {
        chomp $line;

        if ($csv->parse($line)) {
            #Push elements into array
            push(@fields, $csv->fields());
        } else {
        warn "Line could not be parsed: $line\n";
        }

        my $column0 = $fields[0];
            my $column1 = $fields[1];
            my $column2 = $fields[2];
            my $column3 = $fields[3];
            my $column4 = $fields[4];
            my $column5 = $fields[5];
            my $column6 = $fields[6];
            my $column7 = $fields[7];
            my $column8 = $fields[8];
            my $column9 = $fields[9];
            my $column10 = $fields[10];
            my $column11 = $fields[11];
            my $column12 = $fields[12];
            my $column13 = $fields[13];
            my $column14 = $fields[14];
            my $column15 = $fields[15];
            my $column16 = $fields[16];
            my $column17 = $fields[17];
            my $column18 = $fields[18];
            my $column19 = $fields[19];
            my $column20 = $fields[20];
            my $column21 = $fields[21];
            my $column22 = $fields[22];
            my $column23 = $fields[23];
            my $column24 = $fields[24];
            my $column25 = $fields[25];
            my $column26 = $fields[26];
            my $column27 = $fields[27];
            my $column28 = $fields[28];

            print $column6;
    }

close $fh;

Kann mir jemand helfen? Über eine kurze Rückmeldung wäre ich sehr dankbar.

Gruß
CGWS

bei Antwort benachrichtigen