read(n) Tcl Built-In Commands read(n)______________________________________________________________________________NAMEread - Read from a channel
SYNOPSISread ?-nonewline? channelId
read channelId numChars
_________________________________________________________________DESCRIPTION
In the first form, the read command reads all of the data from chan‐
nelId up to the end of the file. If the -nonewline switch is specified
then the last character of the file is discarded if it is a newline. │
In the second form, the extra argument specifies how many characters to │
read. Exactly that many characters will be read and returned, unless │
there are fewer than numChars left in the file; in this case all the │
remaining characters are returned. If the channel is configured to use │
a multi-byte encoding, then the number of characters read may not be │
the same as the number of bytes read. │
If channelId is in nonblocking mode, the command may not read as many │
characters as requested: once all available input has been read, the │
command will return the data that is available rather than blocking for │
more input. If the channel is configured to use a multi-byte encoding, │
then there may actually be some bytes remaining in the internal buffers │
that do not form a complete character. These bytes will not be │
returned until a complete character is available or end-of-file is │
reached. The -nonewline switch is ignored if the command returns
before reaching the end of the file.
Read translates end-of-line sequences in the input into newline charac‐
ters according to the -translation option for the channel. See the
fconfigure manual entry for a discussion on ways in which fconfigure
will alter input.
SEE ALSOeof(n), fblocked(n), fconfigure(n)KEYWORDS
blocking, channel, end of line, end of file, nonblocking, read, trans‐
lation, encoding
Tcl 8.1 read(n)