From:     [EMAIL PROTECTED]
        Subject:        Re: determining a plain text file
        Date:   10 July 2006 09:45:12 BDT
        To:       [email protected]

Though be aware that if you're going to need to test a lot of files,
and particularly if you're going test big files, then the regex will
be a great deal slower than than a 'repeat for each char
c...charToNum(c)' approach:

On my machine (mac PB 1.5Ghz), the first replaceText approach took
about 200 miliiiseconds on a 40k file, and about 6.5 seconds on a
1.3mb file,
where as testing each char in a repeat for loop took 1 millisecond and
7 milliseconds respectively.

The second regex approach appeared to cause Rev to hang - I got the
spinning beach ball appearing and disappearing - so I forced quit
after a minute or so.

best,

Mark

ps. the function I used was:

function isText tData
 --  put replacetext (tData,"[^\x20-\x7E\n\r\t]","") into nData
 --  return tData = nData

 repeat for each char c in tData
   add 1 to tc
   get charToNum(c)
   if it <> 9 OR it <> 10 Or it <> 13 AND it < 32 then exit repeat
 end repeat
 return tc = length(tData)
end isText



On 10 Jul 2006, at 04:33, Bill Marriott wrote:

Slightly more clever (length isn't actually needed)

put url "file:{yourfile}" into daFile
if daFile = replacetext (daFile,"[^\x20-\x7E\n\r\t]","") then put "Plain
text."


J. Landman Gay wrote:
Bill Marriott wrote:
put url "file:{yourfile}" into oneFile
put replacetext (oneFile,"[^\x20-\x7E\n\r\t]","") into twoFile
if length(oneFile) = length(twoFile) then put "It's a plain text file."

That's pretty clever.



_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your
subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution
_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to