1
1
Fork 0
mirror of https://github.com/QB64-Phoenix-Edition/QB64pe.git synced 2024-06-29 11:40:38 +00:00
QB64-PE/internal/help/LINE_INPUT_(file_statement).txt
SteveMcNeill 33adc04fc4 Add temp folder to repo. It's necessary as well!
Just more initial setting on... nothing much to see here.
2022-04-28 13:39:56 -04:00

56 lines
2.4 KiB
Plaintext

The '''LINE INPUT #''' file statement reads an entire line from a text file into a string variable.
{{PageSyntax}}
: '''LINE INPUT''' '''#'''{{Parameter|fileNumber&}}''',''' ''stringVariable$''
{{Parameters}}
* {{Parameter|fileNumber&}} is the [[INTEGER]] number of the file previously opened with the [[OPEN]] statement.
* {{Parameter|stringVariable$}} holds the text line read from the file.
{{PageDescription}}
* Reads a file using the {{Parameter|fileNumber&}} [[OPEN]]ed in the [[INPUT (file mode)]] or [[BINARY]] file mode as one file line text string.
* '''NOTE:''' [[LINE INPUT (file statement)|LINE INPUT]] will work faster in [[BINARY]] mode than in [[INPUT (file mode)|INPUT]] mode.
** Using '''LINE INPUT #''' in [[BINARY]] mode is possible in '''version 1.000 and up'''
* Can be used with [[EOF]] to count the number of lines of data (records) in a file using a loop.
* Use the [[EOF]] function to avoid going past the end of a file and creating an error.
* '''LINE INPUT #''' can even retain the original quotation marks in text.
* '''Note: QB64''' will not remove CHR$(0) from the end of '''LINE INPUT #''' string return values like QBasic did.
{{PageErrors}}
* '''If an "Input past End of file" error occurs, check for CHR$(26) (end of file character) in the files being read.'''
* '''Warning: files must exist to be opened in '''INPUT''' mode. Use [[_FILEEXISTS]] to avoid program [[ERROR Codes|errors]].'''
{{PageExamples}}
''Example:'' Finding the number of filenames listed in a file to dimension an array to hold them.
{{CodeStart}} '' ''
{{Cl|REDIM}} FileArray$(100) 'create {{Cl|$DYNAMIC|dynamic}} array
{{Cl|SHELL}} {{Cl|_HIDE}} "DIR /B *.* > D0S-DATA.INF"
{{Cl|IF...THEN|IF}} {{Cl|_FILEEXISTS}}("D0S-DATA.INF") THEN
{{Cl|OPEN}} "D0S-DATA.INF" FOR {{Cl|INPUT (file mode)|INPUT}} AS #1
DO UNTIL {{Cl|EOF}}(1)
{{Cl|LINE INPUT}} #1, file$ 'read entire text file line
filecount% = filecount% + 1
LOOP
{{Cl|CLOSE}} #1
{{Cl|END IF}}
{{Cl|REDIM}} FileArray$(filecount%)
{{Cl|PRINT}} filecount% '' ''
{{CodeEnd}}
{{PageSeeAlso}}
* [[OPEN]], [[CLOSE]]
* [[INPUT (file mode)]], [[INPUT (file statement)|INPUT #]], [[INPUT$]] {{text|(file input)}}
* [[INPUT]], [[LINE INPUT]], [[INPUT$]] {{text|(keyboard input)}}
* [[_FILEEXISTS]], [[_DIREXISTS]]
* [[FILELIST$]] (member-contributed function replacement for [[FILES]])
{{PageNavigation}}
<