Hi --

On Sun, 27 Jul 2008, Adgar Marks wrote:

> Hi all,
>
> i wrote array of hashes and i would like to sort it. I search in the net
> few hours how to do this, but was not able to find exactly what i
> wanted.
>
> Here is my code:
> _FilesData  = Array.new

_FilesData is kind of a weird variable name.

> _FilesData << { :FileName =>  splitLine[8]      ,
>                :Year     =>  Time.now.year     ,
>                :Month    =>  month             ,
>                :Day      =>  splitLine[6].to_i ,
>                :Hour     =>  hm[0].to_i        ,
>                :Min      =>  hm[1].to_i        ,
>                :Suffix   =>  Str               ;
>                :Size     =>  splitLine[4].to_i
>               }
>
> I would like to sort _FilesData accourding to Year, then Month, then
> Day, then by Suffix (Year, Month and Day are Integers numbers and Suffix
> is an ascii string).
>
> Just a remark, the size of _FilesData is more then one date set.

Try this (untested):

   _FilesData.sort_by {|hash| hash.values_at(:Year, :Month, :Day, :Suffix) }


David

-- 
Rails training from David A. Black and Ruby Power and Light:
  *  Advancing With Rails    August 18-21    Edison, NJ
  * Co-taught by D.A. Black and Erik Kastner
See http://www.rubypal.com for details and updates!