Memoize |
BasicWerk
EC Support
Technique
Facebook
|
20140815223707_ruby_file_open |
ruby_file_open
File::open はブロック内でコードの実行が完了すると自動的に close してくれる(lisp 的に言うと with ブロック)。 ブロックのはじめで {|fh| ... } のようにシンボルを置くと、open したストリームをバインドしてくれる(Factor のレキシカル変数みたいだ)。 % cat sample.txt aaa bbb ccc % cat read.rb #! /usr/bin/ruby # coding: utf-8 file = ARGV[0] File::open(file){|fh| while line = fh.gets puts line end } % read.rb sample.txt aaa bbb ccc
http://www2.atwiki.jp/kmo2/pages/16.html
|
© Shin Nakamura/BasicWerk 2014 |