Input (File Mode)

Specifies text file to be opened for input mode

Syntax
	KeyPgOpenOpen filename for Input [KeyPgEncodingEncoding encoding_type] [KeyPgLockLock lock_type] as [#]
	filenum 

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 KeyPgOpenOpen to open a text file for reading.

	This mode allows to read sequentially lines of text with KeyPgLineinputPpLine Input #, 
	or to read comma separated values with KeyPgInputPp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 KeyPgEncoding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 KeyPgFreefileFreeFile function.

Example
	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

Differences from QB

See also
	* KeyPgInputInput (Console I/O)
	* KeyPgInputPpInput #
	* KeyPgInputnumInput()
	* KeyPgAppendAppend
	* KeyPgOpenOpen
	* KeyPgOutputOutput

