Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number


by Happy-the-monk (Abbot)
on Jun 28, 2013 at 11:35 UTC ( #1041233=note: print w/replies, xml ) Need Help??

in reply to Re^2: TEXT TO CSV
in thread TEXT TO CSV

the other war around

Don't mention the war!

But please do check out Text::CSV which allows you to read and write CSV files.
... as brother Tux's pointed out.

Cheers, Sören

(hooked on the Perl Programming language)

Replies are listed 'Best First'.
by Anonymous Monk on Jun 28, 2013 at 12:55 UTC
    sorry about the typo :) text to csv code which is
    use Text::CSV; my @rows; my $csv = Text::CSV->new ( { binary => 1 } ) # should set binary att +ribute. or die "Cannot use CSV: ".Text::CSV->error_diag (); open my $fh, "<:encoding(utf8)", "test.csv" or die "test.csv: $!"; while ( my $row = $csv->getline( $fh ) ) { $row->[2] =~ m/pattern/ or next; # 3rd field should match push @rows, $row; } $csv->eof or $csv->error_diag(); close $fh; $csv->eol ("\r\n"); open $fh, ">:encoding(utf8)", "new.csv" or die "new.csv: $!"; $csv->print ($fh, $_) for @rows; close $fh or die "new.csv: $!"; # # parse and combine style # $status = $csv->combine(@columns); # combine columns into a string $line = $csv->string(); # get the combined string $status = $csv->parse($line); # parse a CSV string into field +s @columns = $csv->fields(); # get the parsed fields $status = $csv->status (); # get the most recent status $bad_argument = $csv->error_input (); # get the most recent bad argum +ent $diag = $csv->error_diag (); # if an error occured, explains + WHY $status = $csv->print ($io, $colref); # Write an array of fields # immediately to a file $io $colref = $csv->getline ($io); # Read a line from file $io, # parse it and return an array # ref of fields $csv->column_names (@names); # Set column names for getline_ +hr () $ref = $csv->getline_hr ($io); # getline (), but returns a has +href $eof = $csv->eof (); # Indicate if last parse or # getline () hit End Of File $csv->types(\@t_array); # Set column types
    there is a demarcation on this line # parse and combine style. so like is this entire code helps in converting text to csv or just a part of it
by Anonymous Monk on Jun 28, 2013 at 13:20 UTC
    hey can you elaborate the steps with any example , so that I can get a hang of it
by torres09 (Acolyte) on Jun 28, 2013 at 13:43 UTC

    Hey anonymous monk , I am having the same trouble , what I did is break it into words and print , but it is a crude and a bad way , when there is a comma as a part of text file itself . so if you find any better alternative please do share , hopefully these knowledgeable monks can help you out , they have rescued me a number of times . cheers

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1041233]
[Discipulus]: marioroy did you know zentara is back to themonastery? he was used to be one of the best parallel programming monks
[makita]: sign_types parameter in XML::Compile::WSS ::Signature Does have anybody experience how to use it?
[makita]: Need to sign more elements but all types I put in array are ignored. And is always signed only the body
[Discipulus]: no makita sorry. i see in the synopsis of the module: "WARNING: Only limited real-life experience" might be better compose a SOPW with some code example and data

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (10)
As of 2017-03-23 08:41 GMT
Find Nodes?
    Voting Booth?
    Should Pluto Get Its Planethood Back?

    Results (285 votes). Check out past polls.