ファイルアクセス
rubyの場合、ファイルアクセスというと、よく目にするのはこんなコードだと思います。
File.open(ARGV.to_s).each {|line| puts line}
1行で書けるなんて、javaでプログラムを学んだぼくにとっては驚きでした。
読みは簡単だとして、ファイルに書くというのはどんなでしょう?
ログの処理とかでよくありそうな、最終行に追加書きというケースを試してみたいと思います。
foo = File.open("foo.txt",'a') foo << "bar\n" foo.close
参考にしたのは以下のサイトです。
逆引きRuby
しがない「げのまー」の・・・。 2000-01-04 python を使ってみた。その三。
最後にjavaでの追加書きです。
余分な処理は多いですが、核となる、追加書きでファイルを開く、そこに文字列をwriteする。
という処理はあまり変わらないような気がします。
と言いつつも、rubyの追加 << って記法が好きです(^^)
import java.io.*; public class LastAdd { public static void main(String[] args) { LastAdd add = new LastAdd(); add.start(); } public void start() { try { File file = new File("/home/user/foo.txt"); FileWriter fw = new FileWriter(file,true); fw.write("baz"); fw.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }