>Hi Hilmar
>
>I think I have it resolved. By hand, I have gone through the text files and identified the ASCII characters, principally 26 and 141. Instead of having a FOR..ENDFOR loop with a STRTRAN in between, I just added two lines:
> lcCleanStr = CHRTRAN(lcCleanStr,CHR(26),'')
> lcCleanStr = CHRTRAN(lcCleanStr,CHR(141),'')
>
>Also, this is an operation that runs for a considerable period of time. On customer locations with really large numbers of text files, it could take hours. The table involved is never closed until the operation is complete. If a table remains open, I read somewhere that Fox only actually writes to disk at certain intervals (something like once every five minutes). I have been interrupting the program after a few hundred records. I may have interrupted the operation before an actual physical write to disk, thereby getting the memo from the previous overwrite. In a Belt and Suspenders move, I also added a FLUSH every 1000 records.
>
>This seems to work fine. Thank you for your assistance.
>
>Don Lowrey
FLUSH should reduce data corruption,
unless your disk has write-cache enabled. On the other hand, FLUSH after every record would make your program very slow - so once every so many records seems like a decent compromise.
Difference in opinions hath cost many millions of lives: for instance, whether flesh be bread, or bread be flesh; whether whistling be a vice or a virtue; whether it be better to kiss a post, or throw it into the fire... (from Gulliver's Travels)