OPEN CONS
Opens the console's standard input (stdin) or output (stdout) streams, using it as if it were file operations.
Syntax:
Open Cons As [#]filenumber
Open Cons For Input As [#]filenumber
Open Cons For Output As [#]filenumber
Open Cons For Input As [#]filenumber
Open Cons For Output As [#]filenumber
Usage:
result = Open Cons( [For {Input|Output}[,]] As filenumber )
(or using the QB-like syntax,)
Open Cons [For {Input|Output}] As filenumberParameters:
filenumber
An available file number to bind to the stdin or stdout stream, which can be found with Freefile.
Return Value:
In the first usage, Open Cons() returns a 32 bit Long: a zero (0) on success and a non-zero error code otherwise.
Description:
Open Cons opens the console's stdin or stdout streams for reading or writing. A file number is bound to the stream, which is used in subsequent file operations, such as Input #. An available file number can be retrieved with Freefile.
The Input file mode opens the stdin stream for reading file operations, such as Line Input #, while the Output file mode opens the stdout stream for writing file operations, such as Print #. The Output file mode is the default if not specified.
The stdin and stdout streams are the ones used when the calling process' input or output is redirected (piped) by OS commands, or when it is opened with Open Pipe.
To open both the stdin and stdout streams for file operations, a process must use multiple file numbers.
The normal screen commands, such as Color and Locate, do not work in this mode, because they do not accept a file number.
The TAB keyword, regardless of the given column number, is always interpreted as a simple comma (,) (next output will take place at the next 14 column boundary).
The error code returned by Open Cons can be checked using Err in the next line. The function version of Open Cons returns directly the error code as a 32 bit Long.
Warning: Presently, Open Cons does not work as described above. Without any file mode specifier, a runtime error 1 (illegal function call) occurs. With the Input file mode specifier, the only input mode is well supported. But with the Output file mode specifier, input and output modes are simultaneously supported.
Runtime errors:The Input file mode opens the stdin stream for reading file operations, such as Line Input #, while the Output file mode opens the stdout stream for writing file operations, such as Print #. The Output file mode is the default if not specified.
The stdin and stdout streams are the ones used when the calling process' input or output is redirected (piped) by OS commands, or when it is opened with Open Pipe.
To open both the stdin and stdout streams for file operations, a process must use multiple file numbers.
The normal screen commands, such as Color and Locate, do not work in this mode, because they do not accept a file number.
The TAB keyword, regardless of the given column number, is always interpreted as a simple comma (,) (next output will take place at the next 14 column boundary).
The error code returned by Open Cons can be checked using Err in the next line. The function version of Open Cons returns directly the error code as a 32 bit Long.
Warning: Presently, Open Cons does not work as described above. Without any file mode specifier, a runtime error 1 (illegal function call) occurs. With the Input file mode specifier, the only input mode is well supported. But with the Output file mode specifier, input and output modes are simultaneously supported.
Open Cons throws one of the following runtime errors:
(1) Illegal function call
(1) Illegal function call
- filenumber was not free at the time. use Freefile to ensure that filenumber is free.
Examples:
Dim a As String
Open Cons For Input As #1
Open Cons For Output As #2
Print #2,"Please write something and press ENTER"
Line Input #1,a
Print #2, "You wrote : ";a
Close
Sleep
Open Cons For Input As #1
Open Cons For Output As #2
Print #2,"Please write something and press ENTER"
Line Input #1,a
Print #2, "You wrote : ";a
Close
Sleep
Differences from QB:
- In QB the syntax was OPEN "CON:" FOR INPUT|OUTPUT AS [#] filenumber
See also:
Back to File I/O Functions