Getting the Last Modified Date of a file

Peter Haworth pete at lcsql.com
Sat Jun 30 17:47:24 EDT 2012


Thanks Richard, that will save me some time.
Pete
lcSQL Software <http://www.lcsql.com>



On Sat, Jun 30, 2012 at 2:33 PM, Richard Gaskin
<ambassador at fourthworld.com>wrote:

> Peter Haworth wrote:
>
>> I see you can get the last modified date of all the files in the default
>> folder using the detailed files construct.  Is there not a way to get the
>> same info for a specific file in any folder without having to mess around
>> changing the default folder and filtering out the list for the one you
>> want?
>>
>
> True, no out-of-the-box one-liner, but you can write a function to make it
> a one-liner easily enough - here's one from stdlib, in the Files section of
> the Rev Interoperability Project:
>
>
> ------------------------------**------------------------------**----------
> --| FUNCTION: stdFileInfo
> --|
> --| Author:   Ken Ray
> --| Version:  1.1
> --| Created:  3/4/04
> --| Requires: --
> --|
> --| Retrieves the file/folder information on a specific file/folder,
> --| either as a raw value or in a parseable array.
> --|
> --| If <pOpt_InfoItem> is empty, you will get back the line from the
> --| 'detailed files' in its entirety.
> --|
> --| If <pOpt_InfoItem> is one of "fileName","dataSize","**resSize",
> --| "size" (a combination of "dataSize" and "resSize"),
> --| "createDate","modDate","**accessDate","BUdate","ownerID"**, "groupID",
> --| "permissions","creator", "type", or "creatorType" (a combination of
> --| "creator" and "type"), only that value is returned.
> --|    put stdFileInfo("/Users/ken/test.**txt","creatorType")
> --|    --> TTXTtext
> --|
> --| If <pOpt_InfoItem> is "array", you get back all the items in an
> --| array that you can then use one of the info "keys" above to get at
> --| the value you're interested in, with "full" giving you the full
> --| detailed files line.
> --|    put stdFileInfo("/Users/ken/test.**txt","array") into tFileA
> --|    put tFileA["creatorType"]
> --|    --> TTXTtext
> ------------------------------**------------------------------**----------
>
> function stdFileInfo pFilePath,pOpt_InfoItem
>  if pOpt_InfoItem <> "" then
>    if pOpt_InfoItem is not among the items of "full,fileName,dataSize,**
> resSize,createDate,modDate,**accessDate,BUdate,ownerID,**
> groupID,permissions,**creatorType,size,creator,type,**array" then
>      return "StdLibError: '" & pOpt_InfoItem & "' is not a valid file
> property."
>    end if
>  end if
>  set the itemDel to "/"
>  put urlEncode(last item of pFilePath) into tItem
>  delete last item of pFilePath
>  put the directory into tOldDir
>  set the directory to pFilePath
>  put the detailed files into tDetailedList
>  set the directory to tOldDir
>  set the itemDel to ","
>  put lineOffset(cr&tItem&",",cr&**tDetailedList) into tLine
>  put line tLine of tDetailedList into tDetailedInfo
>  if pOpt_InfoItem = "" then return tDetailedInfo
>  replace "," with tab in tDetailedInfo
>  set the itemDel to tab
>  put tDetailedInfo into tFileA["full"]
>  put urlDecode(item 1 of tDetailedInfo) into tFileA["fileName"]
>  put (item 2 of tDetailedInfo) into tFileA["dataSize"]
>  put (item 3 of tDetailedInfo) into tFileA["resSize"]
>  put (item 2 of tDetailedInfo) + (item 3 of tDetailedInfo) into
> tFileA["size"]
>  put "createDate,modDate,**accessDate,BUdate" into tDates
>  replace "," with tab in tDates
>  repeat with x = 4 to 7
>    put item x of tDetailedInfo into tSecs
>    if tSecs <> "" then convert tSecs to short date and time
>    put tSecs into tFileA[(item x-3 of tDates)]
>  end repeat
>  put (item 8 of tDetailedInfo) into tFileA["ownerID"]
>  put (item 9 of tDetailedInfo) into tFileA["groupID"]
>  put (item 10 of tDetailedInfo) into tFileA["permissions"]
>  put (item 11 of tDetailedInfo) into tFileA["creatorType"]
>  put (char 1 to 4 of item 11 of tDetailedInfo) into tFileA["creator"]
>  put (char 5 to 8 of item 11 of tDetailedInfo) into tFileA["type"]
>
>  if pOpt_InfoItem = "array" then
>    return tFileA
>  else
>    return tFileA[pOpt_InfoItem]
>  end if
> end stdFileInfo
>
>
>
> --
>  Richard Gaskin
>  Fourth World
>  LiveCode training and consulting: http://www.fourthworld.com
>  Webzine for LiveCode developers: http://www.LiveCodeJournal.com
>  Follow me on Twitter:  http://twitter.com/**FourthWorldSys<http://twitter.com/FourthWorldSys>
>
> ______________________________**_________________
> 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<http://lists.runrev.com/mailman/listinfo/use-livecode>
>



More information about the use-livecode mailing list