Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re: Reading and writing data to text file and to table

by Utilitarian (Vicar)
on Jul 03, 2013 at 05:48 UTC ( [id://1042153]=note: print w/replies, xml ) Need Help??


in reply to Reading and writing data to text file and to table

Why not represent your data in the way you wish to present it? create a 2-dimensional array using the line number of the file as your index when reading in the data.
subroutine{ my @data; my $table; open( F, "$File" ) || die("Could not open $File"); while (<F>) { chomp(); push( @{@data[$.]},( split /,/, $line)); } close(F); $table .= "<table border=1>"; for my $i ( 0 .. $#data ) { $table .= "<tr>"; for ( @{@data[$i]}){ $table .= "<td>$_</td>\r\n"; } $table .= "</tr>"; } $table .= "</table>"; }
print "Good ",qw(night morning afternoon evening)[(localtime)[2]/6]," fellow monks."

Replies are listed 'Best First'.
Re^2: Reading and writing data to text file and to table
by learner@perl (Novice) on Jul 03, 2013 at 06:51 UTC
    Hi Masters,

    Please find the records which i formed below

    $input{$EMPNO}[0]="DOB,Name,Empid,salary,Gross_salary,Department,Compa +ny"; $input{$EMPNO}[1]="Month,NET_Salary,";

    The code which is used to put the records in table

    { my @data; my $table; foreach my $k (keys %input) { foreach (@{$input{$k}}) { chomp(); push( @{@data[$.]},( split /[,\n]/, $_)); } } $table .= "<table border=1>"; for my $i ( 0 .. $#data ) { $table .= "<tr>"; for ( @{@data[$i]}){ $table .= "<td>$_</td>\r\n"; } $table .= "</tr>"; } $table .= "</table>"; }

    The output i want in a tabular format, when i run the above code i have error,Can't use an undefined value as an ARRAY reference

      Hi Masters,

      Good Morning, i am creating some records by adding some variables to it as mentioned below

      $report{}[0]="DOB,Name,Empid,salary,Gross_salary,Department,Company"; $report{}[1]="Month,NET_Salary,";

      I need to print these records to text file and also to a table

      subroutine{ my @data; my $table; open( F, "$File" ) || die("Could not open $File"); while ( my $line = <F> ) { chomp($line); push( @data,( split /[,\n]/, $line));} close(F); $table .= "<table border=1>"; for my $i ( 0 .. $#data ) { $table .= "<tr>"; for ( @data[$i]){ $table .= "<td>$_</td>\r\n"; } $table .= "</tr>"; } $table .= "</table>"; }

      When i execute this code, i am getting output as:

      MessageFile MessageFile MessageFile MessageFile MessageFile

      How can i read those records and print them into to text file and also to a table, any help on this, thanks in advance

      I have changed the code from for ( @data$i){ for column, i am getting output in single coulmn

      DOB Name Empid salary Gross_salary Department Company Month NET_Salary

      Its not displaying the data in row and column

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others having a coffee break in the Monastery: (5)
As of 2024-04-19 03:10 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found