【Ruby3.x】File::size?()メソッドの使い方
size?メソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
size?メソッドは、指定されたファイルのサイズをバイト単位で取得するメソッドです。このメソッドはRubyのFileクラスに属しており、引数として確認したいファイルのパスを文字列で受け取ります。size?メソッドは、ファイルが実際に存在し、かつそのファイルのサイズが取得できる場合に、ファイルのサイズを整数値で返します。例えば、100バイトのファイルに対してこのメソッドを呼び出すと、数値の100が戻り値として得られます。
このメソッドの大きな特徴は、ファイルが存在しない場合や、何らかの理由でファイルのサイズを取得できない場合にnilを返す点です。これは、同じくファイルのサイズを取得するFile.sizeメソッドとは異なる振る舞いです。File.sizeメソッドは、ファイルが存在しない場合にはErrno::ENOENTのような例外を発生させますが、size?メソッドは例外を発生させずにnilを返すため、プログラムの制御がよりスムーズになります。したがって、ファイルが存在するかどうかの確認と同時にサイズを取得したい場合に特に有用です。プログラム内でファイルの存在チェックとサイズの取得を一度に行いたい場合に、例外処理を記述する手間を省き、簡潔なコードで処理を行うことができます。
構文(syntax)
1File.size?("path/to/some_file.txt")
引数(parameters)
filename
- filename: File.size? メソッドに渡すファイル名を指定します。このファイル名に基づいて、ファイルのサイズが取得されます。
戻り値(return)
Integer | nil
指定されたファイルのサイズをバイト単位の整数で返します。ファイルが存在しない場合は nil を返します。