Rubyでファイルやディレクトリのパス操作を行う際、文字列だけで操作するよりもPathnameクラスを利用することで、オブジェクト指向的に扱うことができます。Pathnameはファイルパスをオブジェクトとして扱い、便利なメソッドで簡単に操作が可能です。
Pathnameクラスの基本
PathnameクラスはRuby標準ライブラリの一部で、ファイルやディレクトリのパスをオブジェクトとして扱うことができます。インスタンス化すると、パスに対するさまざまな操作が可能になります。
例。
require 'pathname'
path = Pathname.new('/home/user/documents')
puts path.basename # => documents
puts path.dirname # => /home/user
puts path.extname # => ''
パス結合や子ディレクトリ操作
Pathnameオブジェクトは演算子やメソッドでパスの結合や子ディレクトリの参照が簡単です。
file = path + 'file.txt' # パスを結合
puts file.to_s # => /home/user/documents/file.txt
存在チェックやファイル操作
Pathnameにはファイルやディレクトリの存在チェックや作成、読み書きの補助メソッドがあります。
puts path.exist? # 存在チェック
puts path.directory? # ディレクトリか確認
puts file.file? # ファイルか確認
まとめ
Rubyでパス操作をオブジェクト指向的に扱うなら、Pathnameクラスを使うのが最適です。文字列操作に比べて安全で、コードの可読性や保守性も向上します。


コメント