Скачать TextF - Fast Text File Reading Operations

27.08.1989
Скачать файл (12,48 Кб)




TEXTF is a text file processing package that allows for position
seeks and faster string input from files.

The files in the TEXTF package are a direct adaptation of the
RLINE package developed by Don Strenczewilk, C'Serve [72617,132].

The TEXTF package takes the RLINE routines and makes the primary
data type RFREC into an object.  All other operations are the
same as RLINE except for slight changes in the test program.
Rather than using the command line, the sample program TEXTTEST
prompts for the file name.

This was done mainly as an exercise in using Objects and TASM,
but there are some advantages I can think of in using ojects
here.  First, descendent objects can be easily formed to do
special tricks like seek forward and backward for a specific
string.  I can use that in my script processor.

After doing the conversion and getting familiar with the WELL
DOCUMENTED asm code, I got to wondering if straight Turbo Blocked
I/O could be used just as well as the ASM code.  The end result
would be the same.  A new object type could override the present
methods with TURBO level methods for a test.  I don't have time
right now.

I tried testing with and without virtual methods, and found no
speed diferences on a 200K text file.

Please address any comments to Myself or to Don at the above
Compuserve addresses.

(*********************************************************************
                   Fast disk file text reading operations.

 This program is a OOP'd version of Don Strenczewilk's
 [72617,132] RLINE package.

 Modifications by Arthur Zatarain, C'serve 73417,525  09/25/89


This unit contains some fast reading routines designed to work
with standard ASCII disk files:

FOpen             Open a file
FRead             Read the next character
FReadLn           Read the next string
FFilePos          Return the current position in the file
FSeek             Seek to any position
FClose            Close a file

The RLINE unit uses about 600 bytes of your programs code space,
and 0 data.