LPARAMETERS tcFileName, tcCase LOCAL oFso, lcFileName, loFile, llOk, lcNewName oFso = CreateObject("Scripting.FileSystemObject") lcFileName = ALLTRIM(tcFileName) llOk = .T. TRY loFile = oFso.GetFile(lcFileName) CATCH llOk = .F. ENDTRY IF llOk DO CASE CASE UPPER(tcCase) = "L" lcNewName = LOWER(loFile.Name) CASE UPPER(tcCase) = "U" lcNewName = UPPER(loFile.Name) CASE UPPER(tcCase) = "P" lcNewName = PROPER(loFile.Name) OTHERWISE llOk = .F. ENDCASE IF llOk TRY loFile.Name = lcNewName + ".TEMP" loFile.Name = lcNewName CATCH llOk = .F. ENDTRY IF llOk AND loFile.Name <> lcNewName llOk = .F. ENDIF ENDIF ENDIF RETURN llOk>I am using the following to create a batch file whose purpose is to force jpg filenames to lowercase (for ftp'ing to a unix webserver):
>ERASE c:\lowercasenames.bat >cPath = "C:\temp\" > >ADIR(aFiles,"c:\temp\*.JPG") >IF TYPE("aFiles") = "C" > FOR nCnt = 1 TO ALEN(aFiles,1) > cText = "rename " + cPath + ALLTRIM(aFiles(nCnt,1)) +" " + LOWER(ALLTRIM(aFiles(nCnt,1)))+CHR(10) > STRTOFILE(cText,"C:\lowercasenames.bat",.t.) > ENDFOR >ENDIF >IF FILE("c:\lowercasenames.bat") > RUN /N7 C:\lowercasenames.bat >ENDIF >>
>rename C:\temp\TEJAS1.JPG tejas1.jpg >rename C:\temp\TEJAS2.JPG tejas2.jpg >rename C:\temp\TEJAS3.JPG tejas3.jpg >rename C:\temp\TEJAS4.JPG tejas4.jpg >rename C:\temp\TEJAS5.JPG tejas5.jpg > >>