Hi Jim,

I'm not entirely clear on what you have in the first array, but it sounds
like it won't be of much use since you already have a hash with all the
information you need.

You're probably going to have to create a new data structure that keys off
of the date so you can search/sort based on the date.

One (poor) way to do it is:
### Make a hash keyed by date:
foreach $vol (keys(old_hash)){
    $date = $old_hash{$vol};
    $mdy = join('', (split(m{/}, $date))[2,0,1]);        ## converts
10/01/2001 --> 20011001, I think :)
    $new_hash{$mdy}= $vol;    ## %new_hash is indexed by a sortable date key
}

### Sort %new_hash by its keys and print the data to a file
foreach $d (sort(keys(%new_hash))) {
    print OUTFILE "$old_hash{$new_hash{$d}} $new_hash{$d}\n";
    ## prints "10/01/2001 volume_one" to the outfile, I think.
}

Of course, this code really sucks (I didn't even write it, my dog did) but
what do you want for free advice?  :)

-- Brad

> I have an array of strings where the first element of the string is a
volume name. The array is sorted by the volume name. I also have hash that
stores dates in the form month/day/year keyed by the volume name.
>
> How would I go about sending to a file the volume names and dates sorted
by the date? I had thought to put the information into another array and
sort it before sending it out. If I do that, how do I sort correctly? Any
suggestions?
>
> --
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to