Split process to parsing report files and generating daily reports from entries

e.g.)
  A report file content (2 entries):
2013-01-30:100%:Read all commit.
2013-02-01:40%:There were many typo commit.

By parsing:
  Before: report file
  After : entries (Array) like below:
    [
      {
        :date       => "2013-01-30",
        :read_ratio => "100",
        :comment    => "Read all commit."
      },
      {
        :date       => "2013-02-01",
        :read_ratio => "40",
        :comment    => "There were many typo commit."
      }
    ]

By generating:
  Before: entries like above:
  After : daily report (Hash) like below:
    {
      "2013-01-30" => {
        :read_ratio => "100",
        :comment    => "Read all commit."
      },
      "2013-02-01" => {
        :read_ratio => "40",
        :comment    => "There were many typo commit."
      }
    }