Hello group.
I have some code (given to me), but I don't know alot about ASP, so I was
hoping someone here can help.
The code below will scan a folder and subfolder with a date/time input and
return xml structure off all files that are newer than the supplied date/time.
The problem is that the returned xml has path names like
C:\folder\subfolder\filename.ext
I would like it to be more like /folder/subfolder/filename.ext
Also, the initial path gets returned in the xml "data", but I only want the
sub folders below "data" to get scanned and info returned...
Any help would be greatly appreciated.
function indent(iTreeLevel)
dim rv : rv = ""
if iTreeLevel 0 then
for i = 1 to iTreeLevel
rv = rv & " "
next
end if
indent = rv
end function
'==========================================
function newItemsCount(objFolder, dCutoffDate)
dim rv : rv = 0
dim sFileModified
For Each objFile In objFolder.Files
sFileModified = objFile.DateLastModified
If (sFileModified dCutoffDate) Then
rv = rv + 1
End If
Next
newItemsCount = rv
end function
'==========================================
function newItemsSize(objFolder, dCutoffDate)
dim rv : rv = 0
dim sFileModified
For Each objFile In objFolder.Files
sFileModified = objFile.DateLastModified
If (sFileModified dCutoffDate) Then
rv = rv + objFile.Size
End If
Next
newItemsSize = rv
end function
'==========================================
sub FolderListing(strPath, dCutoffDate, blnRecursive, iTreeLevel)
Dim objFolder
Set objFolder = objFSO.GetFolder(strPath)
response.write(indent(iTreeLevel) & "<folder name=""" & objFolder.Name &
""" newitems=""" & newItemsCount(objFolder, dCutoffDate) & """
newitems_size=""" & newItemsSize(objFolder, dCutoffDate) & """>" & vbCrLf)
For Each objFile In objFolder.Files
sFileSize = objFile.Size
sFileName = objFile.Name
sFileType = objFile.Type
sFileCreated = objFile.DateCreated
sFileModified = objFile.DateLastModified
If (sFileModified dCutoffDate) Then
response.write(indent(iTreeLevel) & " <file name=""" & sFileName & """
size=""" & sFileSize & """ date=""" & sFileModified & """ url=""" & strPath &
"\" & sFileName & """/>" & vbCrLf)
End If
Next
If blnRecursive Then
Dim objSubFolders
Set objSubFolders = objFolder.SubFolders
For Each objFolder in objSubFolders
sFolderName = objFolder.Name
sFolderPath = strPath & "\" & sFolderName
FolderListing sFolderPath, dCutoffDate, blnRecursive, iTreeLevel+1
Next
End if
response.write(indent(iTreeLevel) & "</folder>" & vbCrLf)
end sub
'================================================= ========================================
sDateTime = unescape(Request.QueryString)
aDateTime = split(sDateTime, " ")
sDate = aDateTime(0)
sTime = aDateTime(1) & " " & aDateTime(2)
dDate = DateValue(sDate)
dTime = TimeValue(sTime)
dDateTime = dDate + dTime
Dim objFSO
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
%>
<?xml version="1.0" encoding="utf-8"?>
<newfiles fromdate="<%= dDate %>" datestr="<%= sDate %>" timestr="<%= sTime
%>" resultdatetime="<%= dDateTime %>">
<%
FolderListing server.MapPath("data"), dDateTime, true, 0
%>
</newfiles>
--
Thanks!
Bryan