Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much
 
PerlMonks  

Re^3: adding modules

by bigmacbear (Monk)
on Aug 07, 2008 at 23:22 UTC ( [id://703019]=note: print w/replies, xml ) Need Help??


in reply to Re^2: adding modules
in thread adding modules

If you are simply using Excel to maintain tabular data that will eventually be processed by a CGI script, you can do yourself a big favor by exporting the data into a format that is easier for Perl to digest. Excel can export a worksheet in HTML format, which can then be read with any of the HTML parser modules or simply uploaded to the server for direct consumption by browsers; or it can export the data as a CSV (comma-separated variable) file, for which there are other modules with which Perl can massage the data.

On the other hand, if you want to use CGI to massage data already present on the server to produce a file intended for consumption by Excel, your best bet is to name the script with a .csv extension, and produce valid CSV output from the script (preferably with a module designed for the purpose). Internet Explorer will (by default) then open the CGI script in Excel, embedded in your browser window.

A naive approach to parsing CSV with split() or creating CSV with join() will often work if you are sure your data will never contain embedded commas or quotation marks. However, that is only a subset of valid CSV; hence the recommendation to use modules, which handle these cases better than split and join are capable of. HTML, on the other hand (and particularly Microsoft generated HTML) must be parsed rather than analyzed with split and join, and thus the modules are essential.

Hope this helps.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://703019]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others perusing the Monastery: (5)
As of 2024-04-19 13:49 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found