Monks
I have an inventory (textfile) with the following:
Category ID Name Type Size
=======================================
WaterSports 8765 Drysuit r M-L
WaterSports 8365 Paddle t 45
…
WinterSports 5231 Snowboard j 85
WinterSports 5281 Gloves r S
Etc..
I want to create a hash of hashes like the following
$VAR1 = {
'WaterSports' => [
'8765',
[
'Drysuit',
'r',
'M-L'
]
'8365',
[
'Paddle',
't',
'45'
]
]
};
But instead my code is creating this, what is wrong?
$VAR1 = {
'WaterSports' => [
'8765',
[
'Drysuit',
'r',
'M-L'
]
};
$VAR1 = {
'WaterSports'=> [
'8365',
[
'Paddle',
't',
'45'
]
]
};
This is my code:
open(INFILE, "products-id.txt")|| die "Cannot open products-id.txt fil
+e";
open (OUTPUT,">$output") or die ("Can't open file $output $!");
chomp(my @ProductArray = map { /^\s*$/ ? () : $_ } <INFILE>);
close (INFILE);
foreach my $line(@ProductArray)
{
my ($Category, $ID, $Name, $Type, $Size) = split( / /, $line );
%AllProducts = ($Category => [$ID, [$Name, $Type, $Size]]);
print OUTPUT Dumper(\%AllProducts);
}
Thanks is advance!!
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.