rioRESERVoir

Allajah/Rioの個人ブログ

File.openがうまくいかない

発生した問題

RubyTwitterクライアントを作りたい.
コンシューマーキーやらアクセストークンを.ymlファイルから読み込んでる.

 keys=YAML.load(File.open('./settings.yml'))

=>動作OK

 keys=YAML.load(File.open('~/programming/ruby/twitter/settings.yml')) #(僕の環境の場合)

=> `initialize': No such file or directory @ rb_sysopen - ~/key_setting.yml (Errno::ENOENT)

なぜか絶対パスだとうまくいかない・・・

解決策

もしかしたら,階層が深すぎると読み込めない?と思ってsettings.ymlをホームディレクトリに置いて

 keys=YAML.load(File.open('~/settings.yml'))

としたけどやはりダメ.分からない・・・

追記

歯磨きしてたら思いついた.
あれ,Rubyで”~”なんて使えないんじゃね?
ということで

 keys=YAML.load(File.open('/Users/USER_NAME/settings.yml'))

としたらうまく動いた.良かった