ファイル関連のクラス&モジュール
ファイルを扱うクラスやモジュールには、FileとかFileTestとかFile::StatとかPathnameがある。FileTestはモジュール。Pathnameは添付ライブラリのクラス。Pathname以外は組み込み。以下のように、同じような操作を持っている。
File.directory?(s) FileTest.directory?(s) File::Stat.new(s).directory? Pathname.new(s).directory?
それぞれの違いはこんな感じだと思う。
- Fileは、ファイルに対するあらゆる操作を実装している。FileTestを包含している。
- FileTestは、shとかPerlのファイルテストと同じ。
- File::Statは、statシステムコールのラッパーか。
- Pathnameは、パスの抽象オブジェクト。JavaのFileクラスと似ている。
組込み関数にはこんなのもあった。
test(?d,s)