diff options
Diffstat (limited to 'doc/eof.n')
-rw-r--r-- | doc/eof.n | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/doc/eof.n b/doc/eof.n new file mode 100644 index 0000000..a150464 --- /dev/null +++ b/doc/eof.n @@ -0,0 +1,61 @@ +'\" +'\" Copyright (c) 1993 The Regents of the University of California. +'\" Copyright (c) 1994-1996 Sun Microsystems, Inc. +'\" +'\" See the file "license.terms" for information on usage and redistribution +'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. +'\" +.TH eof n 7.5 Tcl "Tcl Built-In Commands" +.so man.macros +.BS +'\" Note: do not modify the .SH NAME line immediately below! +.SH NAME +eof \- Check for end of file condition on channel +.SH SYNOPSIS +\fBeof \fIchannelId\fR +.BE +.SH DESCRIPTION +.PP +Returns 1 if an end of file condition occurred during the most +recent input operation on \fIchannelId\fR (such as \fBgets\fR), +0 otherwise. +.PP +\fIChannelId\fR must be an identifier for an open channel such as a +Tcl standard channel (\fBstdin\fR, \fBstdout\fR, or \fBstderr\fR), +the return value from an invocation of \fBopen\fR or \fBsocket\fR, or +the result of a channel creation command provided by a Tcl extension. +.SH EXAMPLES +.PP +Read and print out the contents of a file line-by-line: +.PP +.CS +set f [open somefile.txt] +while {1} { + set line [gets $f] + if {[\fBeof\fR $f]} { + close $f + break + } + puts "Read line: $line" +} +.CE +.PP +Read and print out the contents of a file by fixed-size records: +.PP +.CS +set f [open somefile.dat] +fconfigure $f -translation binary +set recordSize 40 +while {1} { + set record [read $f $recordSize] + if {[\fBeof\fR $f]} { + close $f + break + } + puts "Read record: $record" +} +.CE +.SH "SEE ALSO" +file(n), open(n), close(n), fblocked(n), Tcl_StandardChannels(3) +.SH KEYWORDS +channel, end of file |