INPUT (FILE MODE)
Specifies text file to be opened for input mode
Syntax:
Parameters:
filename
file name to open for input
encoding_type
indicates encoding type for the file
lock_type
locking to be used while the file is open
filenum
unused file number to associate with the open file
Description:
A file mode used with Open to open a text file for reading.
This mode allows to read sequentially lines of text with Line Input #, or to read comma separated values with Input #.
Text files can't be simultaneously read and written in FreeBASIC, so if both functions are required on the same file, it must be opened twice.
filename must be a string expression resulting in a legal file name in the target OS, without wildcards. The file will be sought for in the present directory, unless the filename contains a path . If the file does not exist, an error is issued. The pointer is set at the first character of the file.
Encoding_type indicates the Unicode Encoding of the file, so characters are correctly read. If omitted, "ascii" encoding is defaulted. Only little endian character encodings are supported at the moment.
Lock_type indicates the way the file is locked for other processes, it is one of:
filenum is a valid FreeBASIC file number (in the range 1..255) not being used for any other file presently open. The file number identifies the file for the rest of file operations. A free file number can be found using the Freefile function.
This mode allows to read sequentially lines of text with Line Input #, or to read comma separated values with Input #.
Text files can't be simultaneously read and written in FreeBASIC, so if both functions are required on the same file, it must be opened twice.
filename must be a string expression resulting in a legal file name in the target OS, without wildcards. The file will be sought for in the present directory, unless the filename contains a path . If the file does not exist, an error is issued. The pointer is set at the first character of the file.
Encoding_type indicates the Unicode Encoding of the file, so characters are correctly read. If omitted, "ascii" encoding is defaulted. Only little endian character encodings are supported at the moment.
- "utf8",
- "utf16"
- "utf32"
- "ascii" (the default)
Lock_type indicates the way the file is locked for other processes, it is one of:
- Read - the file can be opened simultaneously by other processes, but not for reading
- Write - the file can be opened simultaneously by other processes, but not for writing
- Read Write - the file cannot be opened simultaneously by other processes (the default)
filenum is a valid FreeBASIC file number (in the range 1..255) not being used for any other file presently open. The file number identifies the file for the rest of file operations. A free file number can be found using the Freefile function.
Examples:
Dim ff As UByte
Dim randomvar As Integer
Dim name_str As String
Dim age As Integer
'' collect the test data and output to file with Write #
Input "What is your name? ", name_str
Input "What is your age? ", age
Randomize
Print
ff = FreeFile
Open "testfile" For Output As #ff
Write #ff, Int(Rnd*42), name_str, age
Close #ff
'' clear variables
randomvar = 0
name_str = ""
age = 0
'' input the variables, using Input #
ff = FreeFile
Open "testfile" For Input As #ff
Input #ff, randomvar, name_str, age
Close #ff
Print "Random Number was: " & randomvar
Print "Your name is: " & name_str
Print "Your age is: " & age
'File outputted by this sample will look something like this
'(not including the leading comment marker):
'23,"Your Name",19
Dim randomvar As Integer
Dim name_str As String
Dim age As Integer
'' collect the test data and output to file with Write #
Input "What is your name? ", name_str
Input "What is your age? ", age
Randomize
ff = FreeFile
Open "testfile" For Output As #ff
Write #ff, Int(Rnd*42), name_str, age
Close #ff
'' clear variables
randomvar = 0
name_str = ""
age = 0
'' input the variables, using Input #
ff = FreeFile
Open "testfile" For Input As #ff
Input #ff, randomvar, name_str, age
Close #ff
Print "Random Number was: " & randomvar
Print "Your name is: " & name_str
Print "Your age is: " & age
'File outputted by this sample will look something like this
'(not including the leading comment marker):
'23,"Your Name",19
Differences from QB:
See also:
Back to File I/O Functions