eof - Check for end of file condition on channel
eof channelId
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.
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"
}
file(3tcl),
open(3tcl),
close(3tcl),
fblocked(3tcl),
Tcl_StandardChannels(3tcl)
channel, end of file