rubyで日付の補完

rubyで日付の補完

例:

ファイルリスト
filelist.xt

xxx.csv2.csv


入力ファイル
../xxx.csv2.csv

00-01-01 100
00-01-03 120
00-01-04 150
00-01-06 160

出力ファイル
xxx.csv

2000-01-01 100
2000-01-02 NA
2000-01-03 120
2000-01-04 150
2000-01-05 NA
2000-01-06 160


$ cat hiduke_ume.rb

require 'date'


f=open("filelist.txt","r")




filename=[];

f.each{|i|


        filename.push(i.chomp);
}


filename2=filename.map{|k| "../"+k;}

filename2.length.times{|llll|
f2=open(filename2[llll])

puts filename[llll];
f3=open(filename[llll].gsub(".csv2.csv","")+".csv","w")
tmp=Hash.new;

f2.each{|kk|
        kk2=kk.split(" ")
        f123="20"+kk2[0];
        tmp[f123]=kk2[1].chomp;
}


#tmp.each{|j|
#       puts j;
#}




#exit()

date_min=Date::new(2000,1,1)
date_max=Date::new(2012,9,28)
j23= (date_max-date_min).to_i
ll=(j23).times.map{|k| (date_min+k).to_s}

ll.each{|k|

        if tmp.key?(k) then
                f3.puts k+" "+tmp[k];

        else
                f3.puts k+" "+"NA";
        end

}


}
exit()