Author Topic: Findfile recursive ..  (Read 11302 times)

0 Members and 1 Guest are viewing this topic.

kaefer

  • Guest
Re: Findfile recursive ..
« Reply #30 on: November 12, 2010, 07:13:56 AM »
It seems there's no need to use a sub function:
Code: [Select]
let rec FindFiles dir pat =
    try
        Directory.GetDirectories dir
        |> Array.collect (fun x -> FindFiles x pat)
        |> Array.append (Directory.GetFiles (dir, pat))
    with _ -> Array.empty

Oh, dear. Get ready for the next level:
Code: [Select]
let rec FindFiles dir pat =
    try [|  yield! Directory.GetFiles (dir, pat)
            for x in Directory.GetDirectories dir do yield! FindFiles x pat |]
    with _ -> Array.empty