http://www.perlmonks.org?node_id=948705


in reply to Re: CSV or HTML?
in thread CSV or HTML?

Thats interesting. All the CSV modules I found were meant to read a CSV in PERL as opposed to writing one.

I am using OpenOffice, and the issue was that it was adding the single quote to numbers, therefore making it impossible to format the column as "number".

I'll be sure to look up that module, thanks!

Replies are listed 'Best First'.
Re^3: CSV or HTML?
by furry_marmot (Pilgrim) on Jan 19, 2012 at 20:38 UTC

    I've seen that complaint before, which is odd because the docs clearly tell you how to write a CSV, as well. The first sentence of the description says so specifically. The functions you want are combine (into a CSV string) or, more likely, print (combine and then print to a filehandle).

    Here's a simple example:

    @headers = ( "First", "Second", "Third", "Fourth" ); @cols = ( "I'm text", 12, # <--Number "", "That was a blank" ); my $csv = Text::CSV_XS->new; open my $fh, ">Output.csv" or die $!; $csv->print($fh, @headers); # Prints with \n by default $csv->print($fh, @cols); # Use something like # $csv->print($fh, @$_) for @rows # for an array of data.

    Output.csv should look like this:

    "First","Second","Third","Fourth" "I'm text",12,,"That was a blank"

    Cheers!

    --marmot UPDATED: for clarity and to correct a typo.
      cheers!

      I ended up forcing the ' character both before and after the numbers.

      I'll be sure to try this solution, as currently it's taking me longer to convert the results to numbers, than the actual calculation process.