38

たとえば、テキストファイルがあります。ファイルが空であることをRubyでチェックする最良の方法は何ですか? File.size('test.rb') == 0醜く見える。

4

5 に答える 5

61

zero?次の方法を使用できます。

File.zero?("test.rb")
于 2013-04-12T23:14:05.067 に答える
5

File.size?('test.rb')nilファイルが空の場合、or存在しない と評価されます。File.zero?('test.rb')ファイルが空の場合は true を返しますが、ファイルが見つからない場合は false を返します。特定のニーズに応じて、正しい方法を使用するように注意する必要があります。

トピック作成者の質問の例として、「Ruby でファイルが空であることを確認する最善の方法は何ですか?」という具体的な質問がありました。受け入れられた回答はこれを正しく行いNo such file or directory、ファイルが存在しない場合はエラーメッセージを表示します。

場合によっては、ファイルがないことを空のファイルと「同等」と見なすことがあります。

于 2015-12-16T17:50:21.563 に答える
4

Ruby 2.4.0 の時点で、File.empty はありますか? .

false(ディレクトリを渡すと、そのディレクトリが空であるかどうかにかかわらず、常に返されることに注意してください: File.empty?('/') # => false。そのため、代わりにDir.empty?を使用するか、ファイルとディレクトリの両方で機能する Pathname #empty?を使用します。)

于 2016-12-27T11:59:22.473 に答える