BBS: Inland Empire Archive Date: 02-19-94 (07:51) Number: 391 From: RON PIERCE Refer#: 369 To: ADRIAN WALKER Recvd: NO Subj: Inputing beyond eof Conf: (2) Quik_Bas
AW>My problem is that every so often the input file contains an ASCII 26
AW>(right arrow) which the program then reads as an EOF, and will not input
AW>beyond that point.
Adrian, you will find relief by creating a buffer
to read the contents of the file into then scan the buffer
to retrieve each LINE of text (assuming the file you are
reading is a CR/LF delimited TEXT file). You will need to
track the buffer position AND the file position.
'
============================================================
============= Fhandl% = FREEFILE Fptr& = 0 Done% = 0 cr$
= CHR$(13)
OPEN MyTxtFile$ FOR BINARY ACCESS READ SHARED AS #Fhandl% Size& = LOF(Fhandl%)
DO
Blen% = 4096
IF Size& - Fptr& < Blen% THEN
Blen% = Size& - Fptr&
Done% = -1
END IF
Buffer$ = STRING$(Blen%, 32)
GET #Fhandl%,,Buffer$
Fptr& = SEEK(Fhandl%)
BufPtr% = 1
DO
a% = INSTR(BufPtr%, Buffer$, cr$)
IF a% > 0 THEN
Text$ = MID$(Buffer$, BufPtr%, a% - BufPtr%)
' Do something With text$ now...
BufPtr% = a% + 2 ' SKip over the CHR$(10) after the cr$
ELSE
' Now you should have the picture. When there is NO cr$ found
' in the buffer you can either backup the file pointer (Fptr&)
' To just after the last string retrieved by subtracting the
' remaining bytes in Buffer$ from Fptr& or use the remaining
' bytes in buffer$ at the beginning of your next buffer$
EXIT DO
END IF
LOOP
LOOP UNTIL Done%
CLOSE Fhandl%
' =================================================================
I hope this helps a bit. Code untested but should give you some
insight on buffering a text file.
Ron Pierce
$$60
--- Maximus 2.01wb
* Origin: Imperial Rome * Welcome to the Empire (1:229/424)

Books at Amazon:
Back to BASIC: The History, Corruption, and Future of the Language
Hackers: Heroes of the Computer Revolution (including Tiny BASIC)
Go to: The Story of the Math Majors, Bridge Players, Engineers, Chess Wizards, Scientists and Iconoclasts who were the Hero Programmers of the Software Revolution
The Advent of the Algorithm: The Idea that Rules the World
Moths in the Machine: The Power and Perils of Programming
Mastering Visual Basic .NET