Rubyでスラッシュを意識せずにコーディングする方法
ファイルのパスを生成する際にセパレーターを意識しなくてはならず、どうにもいけていないコードがあります(ありますというか自分が量産していました)。
以下のようなコードです。
1 | path = "#{path1}/{$path2}" |
セパレーターを意識せずコーディングできないものかと調べたところ、File.join
を使えばよしなにやってくれることがわかりました。File.join
を使えばセパレーターを指定する必要はありません。
1 | File.join("hoge", "moge") |
File.join
は正しいであろうパスのフォーマットに補正してくれるため、//hoge
のようなパスが生成されることもありません。
1 | File.join("hoge", "moge/", "/fuga") |
パラメーターが配列でもよしなにやってくれます。
1 | File.join(%w(hoge moge/ fuga)) |
地味ですが、これでセパレーターの悩みから解放されて幸せになれます。