title: Win.dos_dir
author: KUMAGAI Hidetake
mailto: ggb03124@nifty.ne.jp

1. Win.dos_dir

: Win.dos_dir( mask , attr=nil , time_from=nil , time_to=nil )

  ディレクトリを検索して Win::SearchRec# の配列を返します。

  (EN) "Win.dos_dir" searches designated directory by "mask" and "attr", etc., and returns an Array of Win::SearchRec# .

: mask
  mask は 'c:/windows/*.*' という書式で指定します。

  (EN) "mask" is like this; 'c:/windows/*.*'.

: attr
  attr には次の指定が可能です。( Dos/Windows の仕様とは異なるので注意 )

  (EN) "attr" is differ from the same of Dos/Windows.  When "Win::FA_FILE" was designated, dos_dir choose files which have not faDirectory bit nor faVolumeID bit. Default is "Win::FA_ANY_FILE" which matches all.

      Win::FA_ANY_FILE      すべて ( デフォルト )
      Win::FA_FILE          ファイル
      Win::FA_DIRECROY      ディレクトリ
      Win::FA_VAOLUME_ID    ボリュームラベル ( 無効 ? )

  : 例 (Example)
  --ruby
require "phi"
puts Win.dos_dir( "c:/windows/*.*" , Win::FA_DIRECTORY )
--

  * Win::FA_FILE は Dos/Windows の仕様にはありません。
  * (EN) "Win::FA_FILE" is not in Dos/Windows's design.
    : Win::FA_FILE
      not (FA_DIRECROTY or FA_VOLUME_ID)
  : 注意
    以下の指定をしてもうまくいきません。これらを除外するには読みとり後に Win::SearchRec#attr を調べてください。
  : (EN)
    Following options do not function completely. (That is a problem of Dos/Windows's design).  In order to select/exclude these type, you must test Win::SearchRec#attr after you got Array of SearchRec.

    : Win::FA_READ_ONLY
      読みとり専用
    : Win::FA_HIDDEN
      隠し属性

  * 以下は指定できますが，最近の Windows では無効のようです。
    : Win::FA_VAOLUME_ID
      ボリュームラベルにマッチ

: time_from
: time_to

  DateTime 型の日付を指定します。（自動変換機能によって文字列でも可能だったりします）。このオプションはファイルに対してだけ有効です。ディレクトリに対しては無効です。
  (EN) Designate a date by DateTime. (According to the auto convert function, you may designate by String). This option is valid for only "files", but "directoris".

  下のサンプルでは、２０００年の変更日付のファイルとすべてのディレクトリとを返します。
  (EN) Following sample returns the files with time stamp of year 2000 and all of directories.

  : 例 (Example)
  --ruby
require "phi"
puts Win.dos_dir( "c:/windows/*.*" , nil , "2001/1/1", "2001/2/1")
--

  取得した Win::SearchRec#attr は次の定数で判断してください。（FA_FILE は使用できません）。
  (EN) Test Win::SearchRec#attr by following constants. ( %c:FA_FILE% cannot be used for the tast ).
  : Win::FA_READ_ONLY
  : Win::FA_HIDDEN
  : Win::FA_SYS_FILE
  : Win::FA_VOLUME_ID
  : Win::FA_DIRECTORY
  : Win::FA_ARCHIVE
  : Win::FA_ANY_FILE

