Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Find and Replace in huge text file
Message
 
General information
Forum:
Visual FoxPro
Category:
Other
Miscellaneous
Thread ID:
01053411
Message ID:
01053478
Views:
29
I tried FREAD instead of FGETS and it looks like it works fine, I tried to read 8192 bytes with FREAD then write them with FWRITE without any modifications and I got same file size.

>Yes, exactly.
>
>>Are you saying that there're no records in the file and CR's are spread all over it?
>>
>>>Record length is not fixed, there is emebeded Carriage return within the file, so FPUTS most of times return 8192 bytes but some times it return less if there is carriage return ( in that case I need to add carriage return to the output file if FPUTS does not get 8192 byte to keep same structure).
>>>Is there any way to know how many bytes did FGETS return with ?
>>>
>>>
>>>>I'm not sure I understand you. What's the max record len in the file?
>>>>
>>>>>That works fine, except for the carriage return.
>>>>>I need to know if FGETS had got 8192 byte (No need for carriage return - use fwrite, or FGETS had less than 8192 byte, so I need to add carriage return FPUTS).
>>>>>any help on that.
>>>>>
>>>>>>You can use LLFF. A sample code (w/o any error handling)
>>>>>>lhIn = FOPEN(lcFileIn)
>>>>>>lhOut = FCREATE(lcFileOut)
>>>>>>DO WHILE NOT FEOF(lhIn )
>>>>>>  lcLine = FGETS(lhIn,8192)
>>>>>>  * Processing here
>>>>>>  = FPUTS(lhOut, lcLine)
>>>>>>ENDDO
>>>>>>FCLOSE(lhIn)
>>>>>>FCLOSE(lhOut)
>>>>>>
>>>>>>
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform