2) Recreate your loop and replacing, etc, with cfscript instead of tags
3) Your elements to replace, if you are using a list and list functions like
listGetAt(), etc, switch it to an array
After that, if you still need more speed, you can do it directly in java for
another minor gain.
-nathan strutz
-----Original Message-----
From: Shawn Grover [mailto:[EMAIL PROTECTED]
Sent: Tuesday, February 10, 2004 4:24 PM
To: CF-Talk
Subject: Help with speeding up a string replace on a large file.
We have a case where we have 30+ instances of text in an RTF document that
need to be replaced with specific database values. The routine we have does
work, but it's pretty slow. In one case, we have a 1+ meg file, that we
need to do the 30 replacements on via the REPLACENOCASE function. This file
is taking approx 3-5 minutes to open. We've explored using REREPLACE
instead, but are not seeing any noticable speed improvement.
The algorithm we have is something like so:
1. read file into a memory variable via the CFFile tag with action=""> 2. Loop through our elements to replace
3. do an replace on the file in memory for the current element
4. End loop
5. Write the new file out to a temporary file (which we manage through
another process).
We've used the GetTickCount function to narrow down exactly where the
delay is, and it's in the loop - not on the read and write commands.
I'm sure there's a better way to do this - we're looking for a sub 10
second response time, if possible. Any suggestions?
Shawn
[Todays Threads] [This Message] [Subscription] [Fast Unsubscribe] [User Settings]

