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

Re: File handling? How to make the better one?

by tobyink (Abbot)
on Jun 11, 2012 at 15:08 UTC ( #975589=note: print w/ replies, xml ) Need Help??


in reply to File handling? How to make the better one?

if ( system("ls -l | grep datafile.json") == 0 ) {

Sweet Jesus! Is this you trying to check whether a file exists?! You know Perl does have built-ins for checking the existence of a file...

if (-f "datafile.json") {

Using a few commodity modules from CPAN, you can make your life a lot easier...

#!/opt/lampp/bin/perl use strict; use CGI; use CGI::Carp 'fatalsToBrowser'; use File::Slurp qw< read_file write_file >; use JSON qw< from_json to_json >; use constant USER_ACCOUNT_FILE => '/opt/lampp/htdocs/datafile.json'; sub store_user_account { my ($name, $mail, $pass) = @_; my $existing_data = -f USER_ACCOUNT_FILE ? from_json(scalar read_file(USER_ACCOUNT_FILE, err_mode => 'c +roak')) : []; push @$existing_data, { name => $name, mail => $mail, pass => $pass, }; write_file( USER_ACCOUNT_FILE, { atomic => 1, err_mode => 'croak' }, to_json($existing_data), ); } sub process_cgi { my ($q) = @_; store_user_account( map { scalar $q->param($_) } qw(name mail pass), ); print $q->header('text/html'); print "<p>Finished file.</p>\n"; } process_cgi( CGI->new );
perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'


Comment on Re: File handling? How to make the better one?
Select or Download Code
Re^2: File handling? How to make the better one?
by heatblazer (Scribe) on Jun 11, 2012 at 18:12 UTC

    Thanks, I don`t know all these tricks. I`ll most definitely look upon that JSON module too. Looks like it will make my life better.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (16)
As of 2014-12-22 17:02 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (121 votes), past polls