Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?

Format question

by Anonymous Monk
on Jan 26, 2002 at 05:11 UTC ( #141705=perlquestion: print w/replies, xml ) Need Help??
Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:

The code below works great for me, but I would like to format the output of $list. so that it is lined up correctly in the textarea. Can I use a format command and how would that look?
my @arrinstr=(); my $list=""; while (@arrinstr = $sth4->fetchrow) { ($sec,$title,$seats)=@arrinstr; $csec=$sec; $ctitle=$title; $cdes=$seats; $list.="$csec,$ctitle,$cdes\n"; } print $query->textarea ({-name=>'INFO',-default=>$list,-cols=>'75',-ro +ws=>'5'});

Edited 2002-01-25 by Ovid

Replies are listed 'Best First'.
Re: Format question
by ZZamboni (Curate) on Jan 26, 2002 at 05:32 UTC
    You could use sprintf:
    $list=sprintf("%-10s %-30s %d\n", $sec, $title, $seats);
    Of course, you would need to adjust the widths of the fields according to the expected maximum lengths of the data. You should also use appropriate format types (I assumed here that $secv and $title are strings, and $seats is an integer. Different format specifiers may output the same values in different form).

    Side question: why do you copy $sec, $title and $seats to different variables? Unless you are doing something else that your snippet didn't show, it doesn't make much sense.


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://141705]
Approved by root
[Corion]: Hmm. I think overnight I decided on simplifying some code. I have plugin classes that do data import (.csv, .yml, .json) and for that create objects on which then ->load() is called. But YAML::XS doesn't have an object, so I wrote my own wrapper.
[Corion]: This evening, I'll kill that wrapper again, and just call LoadFile() in the plugin class directly instead of creating a go-between object for no real gain.
[Corion]: Writing these import plugins was really nice though - in about 2 hours, I had imports for CSV, YAML and JSON, and adding XLS(X), SQLite (or DBI) data sources is also trivial. I'm idly wondering about separating the plugin into transport+parser, so ...
[Corion]: ... http:// URLs could be retrieved and then parsed, but I think that that would be overkill for a toy static site generator ;)

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (8)
As of 2018-05-22 11:04 GMT
Find Nodes?
    Voting Booth?