eof - Man Page
Check for end of file condition on channel
Synopsis
eof channelId
Description
Returns 1 if an end of file condition occurred during the most recent input operation on channelId (such as gets), 0 otherwise.
ChannelId must be an identifier for an open channel such as a Tcl standard channel (stdin, stdout, or stderr), the return value from an invocation of open or socket, or the result of a channel creation command provided by a Tcl extension.
Examples
Read and print out the contents of a file line-by-line:
set f [open somefile.txt] while {1} { set line [gets $f] if {[eof $f]} { close $f break } puts "Read line: $line" }
Read and print out the contents of a file by fixed-size records:
set f [open somefile.dat] fconfigure $f -translation binary set recordSize 40 while {1} { set record [read $f $recordSize] if {[eof $f]} { close $f break } puts "Read record: $record" }
See Also
file(n), open(n), close(n), fblocked(n), Tcl_StandardChannels(3)
Keywords
channel, end of file
Referenced By
chan(n), close(n), fcopy(n), file(n), gets(n), read(n).
7.5 Tcl Built-In Commands