recursion limit when creating file list of harddrive
JB
sundown at pacifier.com
Fri Oct 30 15:21:36 EDT 2015
When I set the depth to 1 all I would get
is the pWhatFolder but 2 would list the
files at level 1.
JB
> On Oct 30, 2015, at 5:57 AM, Peter M. Brigham <pmbrig at gmail.com> wrote:
>
> Here is a version that puts the trailing "/" on folders and adjusts the input parameters for the function.
>
> -- Peter
>
> Peter M. Brigham
> pmbrig at gmail.com
> http://home.comcast.net/~pmbrig
>
> --------------
>
> function directoryListing pWhatFolder, pInvisibleFiles, pDepth
> -- returns a full listing of the files/folders in a given folder
> -- pass pInvisibleFiles = true if you want to list invisible files
> -- if false or no value passed, then will list only visible files
> -- pDepth is the maximum depth you want to penetrate to
> -- if no value passed, then will list all files at all depths
>
> if pInvisibleFiles = empty then put false into pInvisibleFiles
> if pDepth = empty then put 0 into pDepth
> if char -1 of pWhatFolder <> "/" then put "/" after pWhatFolder
> put pWhatFolder & cr into R
> set the directory to pWhatFolder
> if pDepth = 1 or the result is not empty then return R
> put the files into tFileList
> sort tFileList
> replace cr with cr & pWhatFolder in tFileList
> put pWhatFolder & tFileList & cr after R
> put line 2 to -1 of the folders into tDirList
> sort tDirList
> repeat for each line L in tDirList
> put directoryListing((pWhatFolder & L),pInvisibleFiles,pDepth-1) after R
> end repeat
> if not pInvisibleFiles then
> filter R without "*/.*"
> end if
> return R
> end directoryListing
>
> On Oct 29, 2015, at 8:49 AM, Geoff Canyon wrote:
>
>> "there is a folder" and "there is a file" can distinguish between the two.
>> Obviously if you want to distinguish visually for the user, or to do it
>> without testing, then including the trailing "/" would work.
>>
>> On Wed, Oct 28, 2015 at 1:51 PM, Michael Doub <mikedoub at gmail.com> wrote:
>>
>>> When I saw that the output contained both directories and files, adding
>>> the "/" allows you to
>>> easily know that you are looking at a folder rather than a file.
>>>
>>> put directoryListing(whatfolder) into foo
>>> repeat for each line x of foo
>>> if char -1 of x = "/" then
>>> put x & cr after directoryList
>>> else
>>> put x & cr after fileList
>>> end if
>>>
>>> Given a random path that could be either a directory or a file, is there a
>>> clever way to tell what you have?
>>>
>>> -= Mike
>>>
>>>
>>> On 10/28/15 10:55 AM, Geoff Canyon wrote:
>>>
>>>> The trailing "/" is an interesting point. I checked and the "set the
>>>> directory" command will happily take a trailing "/" or not, but when you
>>>> "put the directory" you get no trailing "/"
>>>>
>>>> Given that, I'd probably leave it as is, and always assume that the
>>>> description of a particular directory needs to have the "/" added when
>>>> adding a filename or directoryname to it.
>>>>
>>>
>>>
>>> _______________________________________________
>>> use-livecode mailing list
>>> use-livecode at lists.runrev.com
>>> Please visit this url to subscribe, unsubscribe and manage your
>>> subscription preferences:
>>> http://lists.runrev.com/mailman/listinfo/use-livecode
>>>
>> _______________________________________________
>> use-livecode mailing list
>> use-livecode at lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
>
>
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
>
More information about the use-livecode
mailing list