【Ruby3.x】Dir::read()メソッドの使い方
readメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
readメソッドは、指定されたディレクトリ内のファイル名やディレクトリ名を配列として取得するメソッドです。このメソッドは、引数として操作対象となるディレクトリのパスを文字列で受け取ります。実行すると、そのディレクトリ内に存在するすべてのエントリ(ファイル名やサブディレクトリ名)の文字列が格納された配列を返します。
ここで重要な点として、返される配列には、現在のディレクトリを表す「.」と親ディレクトリを表す「..」という特殊なエントリも必ず含まれます。そのため、実際のファイルやサブディレクトリだけを扱いたい場合は、これらの特殊なエントリをコードで除外する処理が必要になります。
主に、特定のディレクトリに何が含まれているかを一覧表示したい場合や、後続のファイル操作の前にディレクトリの内容を確認したい場合などに利用されます。指定されたパスが存在しないディレクトリである場合や、アクセス権がない場合には、関連するエラー(例えば Errno::ENOENT)が発生する可能性がありますので、パスの指定には注意が必要です。システムエンジニアとしてファイルシステムを扱う際の基本的な操作の一つとして理解しておくと良いでしょう。
構文(syntax)
1Dir.read(dirname)
引数(parameters)
dirname
- dirname: 読み込むディレクトリのパスを指定する文字列
戻り値(return)
String または nil
Dir.read メソッドは、ディレクトリ内の次のエントリ名を文字列として返します。ディレクトリの終わりに達した場合は nil を返します。