Hvordan lese CSV-filer i Perl

Hvordan lese CSV-filer i Perl


CSV (kommaseparerte verdier) er et spesielt filformat som brukes til å overføre regnearkdata fra ett program til et annet. Data i CSV-format er lagret i en enkel tekstfil med verdiene i hver rad atskilt med komma og hver rad adskilt med mellomrom. Vanligvis, men ikke alltid, er den første linje som brukes for å angi navnet på kolonner. For eksempel kan følgende tekst være en del av en CSV regneark for bøker:

"Tittel", "forfatter"
"Romeo og Julie", "William Shakespeare"
"Hamlet", "William Shakespeare"

Les CSV-filer i Perl programmeringsspråk ved hjelp av tekst :: CSV bibliotek.

Bruksanvisning

1 Lag en ny tekstfil i en tekst editor. All tekst editor vil gjøre, inkludert Windows Notisblokk, men filen skal ende med "PL" filtypen og ikke "txt" eller "rtf."

2 Lim inn følgende signaturen til den første linjen i tekstfilen. Selv om det ikke er nødvendig, det hjelper hvis du distribuerer arbeidet til andre eller glemme senere hvilket språk skriptet bruker.

! / usr / bin / perl

3 Legg til følgende linje i tekstfilen å importere Perl CSV parsing bibliotek:

bruke Tekst :: CSV;

4 Analysere og skrive ut innholdet i en CSV-fil ved å lime inn disse linjene:

min $ input = 'file.csv';

min $ parser = Tekst :: CSV> new ();

open (CSV, "<", $ input);

while (<CSV>) {

if ($parser->parse($_)) {
my @columns = $parser->fields();
print &quot;@columns\n&quot;;
}

}
lukke CSV;

Erstatt file.csv "med navnet på CSV-fil for å analysere.

Hint

  • Installer tekst :: CSV biblioteket fra CPAN katalogen automatisk ved hjelp av kommandoen "CPAN tekst :: CSV".
  • Du kan kjøre kommandoen ved å kjøre "perl csvparse.pl" på en terminal.