[#42243] コミュニティと宗教の分離について — Beyond <beyond@...>

14 messages 2006/05/21

[#42267] メニューのループについて — リックス <rubyer4649@...>

りっくすです

21 messages 2006/05/27

[#42301] Re: メニューのループについて — "conundrum /" <conundrum@...>

conundrumです。

11 messages 2006/05/28

[ruby-list:42253] File objectがいつのまにか nilに、

From: しん <dezawa@...>
Date: 2006-05-23 06:15:08 UTC
List: ruby-list #42253
出沢です

ソートされたデータの(先頭カラムの)値に応じた名前のファイルに
データを振り分けて書き出す。

という仕事をしようとしてますが、うまくいきません。

こんな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 になってしまっています。

なぜでしょう、、、


In This Thread

Prev Next