• ベストアンサー

ディレクトリのファイル数取得

あるディレクトリのファイル数の取得しその数を「ファイルは○個あります」と表示したいのですが。拡張子jpgのファイル数だけを取得したいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • h_hikita
  • ベストアンサー率40% (104/257)
回答No.3

さっきの続きでいくなら、 ## 以下一行追加 変数のを初期化。以下、jpgファイルを見つけるたびにカウントを増やすようにする。 $i = 0; while ($current_file = readdir(DIR)) { if (substr($current_file,-4,4) eq "\.jpg") { ## 以下一行追加 ここに来るということはファイルが有ったという事なので1つカンターを増やす。 $i++; : 中略 : } elsif ( $current_file !~ /[\.]+/ && stat($current_file) && -d _ ) { # ., .. は除く。 statして directoryかどうかチェックする : 中略 : } } closedir(DIR); ## 以下一行追加 書式は適宜必要に応じて記述変更するのが吉。 print "<TD ALIGN=RIGHT>ファイルは $i個あります\n"; print "</TABLE>\n"; exit:

s-holmes
質問者

お礼

ひとつひとつの命令の意味がわかっていない部分があるので単に追加するのもむずかしかったですが、やっとこさできました。ありがとうございました。(^_^)

その他の回答 (3)

  • slackware
  • ベストアンサー率59% (22/37)
回答No.4

こんな感じでしょうか. == #!/usr/bin/perl # ↑ perl のパスは適宜、変更 # .jpg のリストを取得 @files = glob("*.jpg"); # 個数 $count = 0; foreach $file (@files) {  # 通常のファイル  if ( -f $file)  {   $count += 1;  } } print "ファイルは " . $count . "個あります\n"; ==

  • tukitosan
  • ベストアンサー率43% (84/192)
回答No.2

Windows での説明を書いていきます。 「検索」を呼び出します。 そこで、検索の「参照」で、jpg の拡張子の数を知りたいディレクトリーを指定して下さい。 あとは、検索の「名前」に「.jpg」と入力し、検索をかければ、この「.jpg」の数を示してくれることになります。 Macについては、分かりません。すみませんが‥‥。 参考助言にでもなれば、幸いです。 tukitosan でした。

  • take
  • ベストアンサー率50% (3/6)
回答No.1

FinFirstFile, FindNextFile で数えてください。ハンドルを FileClose で閉じるのを忘れずに。