--------------------------------------------------------- -- Some utility functions --------------------------------------------------------- -- SUMMARY: -- lowercase -- uppercase -- fileExist -- adjustPathStringForScript --------------------------------------------------------- fn lowercase instring = ( local upper, lower, outstring upper="ABCDEFGHIJKLMNOPQRSTUVWXYZ" lower="abcdefghijklmnopqrstuvwxyz" outstring = copy instring for iii = 1 to outstring.count do ( jjj = findString upper outstring[iii] if (jjj != undefined) then outstring[iii] = lower[jjj] else outstring[iii] = instring[iii] ) return outstring -- value of outstring will be returned as function result ) --------------------------------------------------------- fn uppercase instring = ( local upper, lower, outstring upper="ABCDEFGHIJKLMNOPQRSTUVWXYZ" lower="abcdefghijklmnopqrstuvwxyz" outstring = copy instring for iii = 1 to outstring.count do ( jjj = findString upper outstring[iii] if (jjj != undefined) then outstring[iii] = upper[jjj] else outstring[iii] = instring[iii] ) return outstring -- value of outstring will be returned as function result ) --------------------------------------------------------- -- Adjust path string to use "/" and not finish with a / -- "c:\temp" -> "c:/temp" -- "c:\temp\" -> "c:/temp" -- "c:/temp" -> "c:/temp" -- "c:/temp/" -> "c:/temp" fn adjustPathStringForScript pathString = ( -- Change '\' in '/' local arrayString, output arrayString = filterString pathString "\\" output = "" for fragment in arrayString do ( output = output + fragment + "/" ) -- Remove final "/" while (output.count) != 0 and (output[output.count] == "/") do ( output = substring output 1 (output.count - 1) ) -- Return result return output ) --------------------------------------------------------- fn fileExist filename = ( local file file = openFile filename mode:"r" if file == undefined then ( return false ) else ( close file return true ) ) ---------------------------------------------------------