From: "しん" Date: 2006-05-23T15:15:08+09:00 Subject: [ruby-list:42253] File objectがいつのまにか nilに、 出沢です ソートされたデータの(先頭カラムの)値に応じた名前のファイルに データを振り分けて書き出す。 という仕事をしようとしてますが、うまくいきません。 こんなscriptを通します。 期待は、Jan というファイルに Jan が3行、Feb というファイルに Febが1行 出ることなのですが、1行書いたところでエラーとなります。 $cat files.rb alist = ["Jan","Jan","Jan","Feb","Mar","Apr","May","Dec"] ofile="" alist.each{|file| if ofile != file ofile != "" && ofp.close ofile = file ofp = open(ofile,"w") end ofp.printf "%s\n",file } ofp.close $ruby files.rb files.rb:6: undefined local variable or method `ofp' for main:Object (NameError) from files.rb:4:in `each' from files.rb:4 Jan というファイルに Jan と 1行書かれておわり。 ofp が nil になってしまっています。 なぜでしょう、、、